TPolyLineShape


class description - source file - inheritance tree

class TPolyLineShape : public TShape, public TAttMarker


    protected:
virtual void Create() virtual _x3d_sizeof_* CreateX3DSize(Bool_t marker = kFALSE) virtual Int_t PointDistancetoPrimitive(Int_t px, Int_t py) virtual void SetConnection(TShape* connection) public:
TPolyLineShape TPolyLineShape() TPolyLineShape TPolyLineShape(TPoints3DABC* points, Option_t* option = "P") TPolyLineShape TPolyLineShape(const TPolyLineShape&) virtual void ~TPolyLineShape() static TClass* Class() virtual Int_t DistancetoPrimitive(Int_t px, Int_t py) virtual void Draw(Option_t* opt) virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py) virtual Color_t GetColorAttribute() const virtual TShape* GetConnection() const virtual TPoints3DABC* GetMarker() const virtual TPoints3DABC* GetPoints() const virtual TShape* GetShape() const virtual Size_t GetSizeAttribute() const virtual Bool_t GetSmooth() const virtual Style_t GetStyleAttribute() const virtual Float_t GetWidthFactor() const static Double_t* Gyrot(Double_t* dirc, Double_t cosang, Double_t sinang, Double_t** trans) virtual TClass* IsA() const virtual void Paint(Option_t* opt) virtual void Paint3d(Option_t* opt) virtual void PaintNode(Float_t* start, Float_t* end, Option_t* option) virtual void PaintPoints(Int_t n, Float_t* p = 0, Option_t* opt) virtual void PaintPolyMarker(Int_t n, Float_t* p = 0, Marker_t m = 0, Option_t* opt) virtual void PaintX3DLine(Option_t* opt) virtual void PaintX3DMarker(Option_t* opt) static Float_t Product(Float_t* v1, Float_t* v2, Int_t ndim = 3) static Double_t Product(Double_t* v1, Double_t* v2, Int_t ndim = 3) virtual Color_t SetColorAttribute(Color_t color) virtual Int_t SetConnection(EShapeTypes connection = kBrik) virtual void SetShape(TShape* shape) virtual Size_t SetSizeAttribute(Size_t size) virtual void SetSmooth(Bool_t smooth = kTRUE) virtual Style_t SetStyleAttribute(Style_t style) virtual void SetWidthFactor(Float_t fact = 1.0) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual Int_t Size() const virtual void Sizeof3D() const virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members


    protected:
Bool_t fPointFlag Flag whether we should paint "points" (option "P") Bool_t fLineFlag Flag whether we should connect the points with "line" (option "L") EShapeTypes fShapeType shape of the segment connections TShape* fShape shape for draw each segment of the polylins TShape* fConnection shape to represent the each "end" of the polyline TPoints3DABC* fPoints PolyLine itself Float_t fWidthFactor factor to calculate the the tube diameters Bool_t fHasDrawn flag to avoid multiply plots Bool_t fSmooth Make smooth connections _x3d_sizeof_* fSizeX3D ! the X3D buffer sizes

Class Description

                                                                                  
                           STAR 3D geometry Object Model                          
                           =============================                          
                                                                                  
                           TDataSet            Legend:                            
                              |                  "classA"                         
                              |                     |     "classB" is derived from
                              v                     v       the "classA"          
                           TVolume               "classB"                         
                              ^                                                   
                              |                  "classQ"                         
                              |                      ^     "classQ" has a pointer 
                            TShape                   |       to "classT"          
                              |                   "classT"                        
                              v                                                   
           -----------------------------------------------------                  
           |               |      |                     |      |                  
           |               |      |     .    .    .     |      |                  
           |               |      |                     |      |                  
           V               v      v                     v      v                  
      TPolyLineShape     TBRIK  TTUBE                 TPCON  TTRD1                
       |        ^                                                                 
       |        |        R  O  O  T        S  H  A  P  E  S                          
       V        |       (see  GEANT 3.21 shapes as well)                           
 St_PolyLine3D  |                                                                 
                |                                                                 
           TPoints3DABC                                                           
                |                                                                 
                |                                                                 
                v                                                                 
      --------------------------------------------------------                    
      |                 |                 |                  |                    
      |                 |                 |                  |                    
      |                 |                 |                  |                    
      V                 v                 v                  v                    
StHits3DPoints   StHelix3DPoints   TTable3Points          TPoints3D               
      ^                 ^                 ^                  ^                    
      |                 |                 |                  |                    
      |                 |                 |                  |                    
  StObjArray    StTrack / StHelixD  TTableSorter       flat floating              
                                          ^              point array              
                                          |        (see St_PolyLine3D as well)    
                                          |                                       
                                        TTable                                    
                                                                                  
                                                                                  
                     S  T  A  R    S  H  A  P  E  S                               
                     -------------------------------                              
                                                                                  


TPolyLineShape()

TPolyLineShape(TPoints3DABC *points,Option_t* option)
  fShape       = new TTUBE("tube","tube","void",0.5,0.5);

~TPolyLineShape()

void Create()

Size3D* CreateX3DSize(Bool_t marker)

Int_t SetConnection(EShapeTypes connection)

Int_t DistancetoPrimitive(Int_t px, Int_t py)
*-*-*-*-*-*-*-*Compute distance from point px,py to a 3-D polyline*-*-*-*-*-*-*
*-*            ===================================================
*-*
*-*  Compute the closest distance of approach from point px,py to each segment
*-*  of the polyline.
*-*  Returns when the distance found is below DistanceMaximum.
*-*  The distance is computed in pixels units.
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

Int_t PointDistancetoPrimitive(Int_t px, Int_t py)
*-*-*-*-*-*-*Compute distance from point px,py to a 3-D points *-*-*-*-*-*-*
*-*          =====================================================
*-*
*-*  Compute the closest distance of approach from point px,py to each segment
*-*  of the polyline.
*-*  Returns when the distance found is below DistanceMaximum.
*-*  The distance is computed in pixels units.
*-*
*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

void Draw(Option_t *)

void ExecuteEvent(Int_t event, Int_t px, Int_t py)

Color_t GetColorAttribute() const

Size_t GetSizeAttribute() const

Style_t GetStyleAttribute() const

void PaintNode(Float_t *start,Float_t *end,Option_t *option)
 Double_t *start - coordinate of the start point of the current segment
 Double_t *end   - coordinate of the end   point of the current segment

void Paint(Option_t *opt)

void PaintPoints(Int_t n, Float_t *, Option_t *)
*-*-*-*-*-*-*-*-*Draw this 3-D polyline with new coordinates*-*-*-*-*-*-*-*-*-*
*-*              ===========================================

void PaintPolyMarker(Int_t n, Float_t *, Marker_t, Option_t *)
*-*-*-*-*-*-*-*-*Paint polymarker in CurrentPad World coordinates*-*-*-*-*-*-*-*
*-*              ================================================

void Paint3d(Option_t *opt)

void PaintX3DLine(Option_t *)

void PaintX3DMarker(Option_t *)

Float_t Product(Float_t *v1, Float_t *v2,Int_t ndim)

Double_t Product(Double_t *v1, Double_t *v2,Int_t ndim)

Double_t* Gyrot(Double_t *dirc, Double_t cosang, Double_t sinang, Double_t trans[3][3])
************************************************************************
*                                                                      *
*   call gyrot(dirc,angp,trans,ntrans)                       vp 880722 *
*                                       revised              vp 921009 *
*                                       revised (f->c++)     vf 981006 *
*       routine for filling rotation transformation matrix             *
*       from axis and rotation angle around                            *
*                                                                      *
*   arguments:                                                         *
*       dirc    direct cosinuses (may be not normalised)               *
*       cosang, sinang - cos and sin of the rotation angle             *
*       tranz   rotation & shift matrix 3*3  (input/output)            *
*    ---------------------------------------------------------------   *
*  This code is provided by Victor Perevoztchikov                      *
************************************************************************

Color_t SetColorAttribute(Color_t color)

Size_t SetSizeAttribute(Size_t size)

Style_t SetStyleAttribute(Style_t style)
 SetStyleAttribute(Style_t style) - set new style for this line
 Returns:
          previous value of the line style


void SetShape(TShape *shape)

Int_t Size() const

void Sizeof3D() const
*-*-*-*-*-*-*Return total X3D size of this shape with its attributes*-*-*-*-*-*
*-*          =======================================================



Inline Functions


               TShape* GetConnection() const
         TPoints3DABC* GetMarker() const
         TPoints3DABC* GetPoints() const
               TShape* GetShape() const
                Bool_t GetSmooth() const
               Float_t GetWidthFactor() const
                 Int_t SetConnection(EShapeTypes connection = kBrik)
                  void SetSmooth(Bool_t smooth = kTRUE)
                  void SetWidthFactor(Float_t fact = 1.0)
               TClass* Class()
               TClass* IsA() const
                  void ShowMembers(TMemberInspector& insp, char* parent)
                  void Streamer(TBuffer& b)
                  void StreamerNVirtual(TBuffer& b)
        TPolyLineShape TPolyLineShape(const TPolyLineShape&)


Author:
Last update: root/star:$Name: $:$Id: TPolyLineShape.cxx,v 1.2 2003/01/27 20:41:36 brun Exp $


ROOT page - Class index - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.