Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

TArrow.h

Go to the documentation of this file.
00001 // @(#)root/graf:$Name:  $:$Id: TArrow.h,v 1.5 2002/10/31 07:27:34 brun Exp $
00002 // Author: Rene Brun   17/10/95
00003 
00004 /*************************************************************************
00005  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers.               *
00006  * All rights reserved.                                                  *
00007  *                                                                       *
00008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
00009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
00010  *************************************************************************/
00011 
00012 #ifndef ROOT_TArrow
00013 #define ROOT_TArrow
00014 
00015 
00017 //                                                                      //
00018 // TArrow                                                               //
00019 //                                                                      //
00020 // One arrow --->.                                                      //
00021 //                                                                      //
00023 
00024 #ifndef ROOT_TString
00025 #include "TString.h"
00026 #endif
00027 #ifndef ROOT_TLine
00028 #include "TLine.h"
00029 #endif
00030 #ifndef ROOT_TAttFill
00031 #include "TAttFill.h"
00032 #endif
00033 
00034 
00035 class TArrow : public TLine, public TAttFill {
00036 protected:
00037         Float_t      fAngle;        //Arrow opening angle (degrees)
00038         Float_t      fArrowSize;    //Arrow Size
00039         TString      fOption;       //Arrow shapes
00040 
00041 public:
00042         TArrow();
00043         TArrow(Double_t x1, Double_t y1,Double_t x2 ,Double_t y2
00044                                ,Float_t arrowsize=0.05 ,Option_t *option=">");
00045         TArrow(const TArrow &arrow);
00046         virtual ~TArrow();
00047                 void   Copy(TObject &arrow) const;
00048         virtual void   Draw(Option_t *option="");
00049         virtual void   DrawArrow(Double_t x1, Double_t y1,Double_t x2 ,Double_t y2
00050                                ,Float_t arrowsize=0.05 ,Option_t *option=">");
00051         Float_t        GetAngle() const {return fAngle;}
00052         Float_t        GetArrowSize() const {return fArrowSize;}
00053         Option_t      *GetOption() const { return fOption.Data();}
00054         virtual void   Paint(Option_t *option="");
00055         virtual void   PaintArrow(Double_t x1, Double_t y1,Double_t x2 ,Double_t y2
00056                                  ,Float_t arrowsize=0.05 ,Option_t *option=">");
00057         virtual void   SavePrimitive(ofstream &out, Option_t *option);
00058         virtual void   SetAngle(Float_t angle=60) {fAngle=angle;} // *MENU*
00059         virtual void   SetArrowSize(Float_t arrowsize=0.05) {fArrowSize=arrowsize;} // *MENU*
00060         virtual void   SetOption(Option_t *option=">"){ fOption = option;}
00061 
00062         ClassDef(TArrow,1)  // An arrow (line with a arrowhead)
00063 };
00064 
00065 #endif

Generated on Thu Dec 18 14:52:16 2003 for ROOT by doxygen1.2.16