library: libGeom #include "TGeoArb8.h" | 
TGeoTrap
class description - source file - inheritance tree (.pdf)
    public:
                          TGeoTrap()
                          TGeoTrap(Double_t dz, Double_t theta, Double_t phi)
                          TGeoTrap(Double_t dz, Double_t theta, Double_t phi, Double_t h1, Double_t bl1, Double_t tl1, Double_t alpha1, Double_t h2, Double_t bl2, Double_t tl2, Double_t alpha2)
                          TGeoTrap(const char* name, Double_t dz, Double_t theta, Double_t phi, Double_t h1, Double_t bl1, Double_t tl1, Double_t alpha1, Double_t h2, Double_t bl2, Double_t tl2, Double_t alpha2)
                          TGeoTrap(const TGeoTrap&)
                  virtual ~TGeoTrap()
           static TClass* Class()
         virtual Double_t DistFromInside(Double_t* point, Double_t* dir, Int_t iact = 1, Double_t step = TGeoShape::Big(), Double_t* safe = 0) const
         virtual Double_t DistFromOutside(Double_t* point, Double_t* dir, Int_t iact = 1, Double_t step = TGeoShape::Big(), Double_t* safe = 0) const
      virtual TGeoVolume* Divide(TGeoVolume* voldiv, const char* divname, Int_t iaxis, Int_t ndiv, Double_t start, Double_t step)
                 Double_t GetAlpha1() const
                 Double_t GetAlpha2() const
                 Double_t GetBl1() const
                 Double_t GetBl2() const
                 Double_t GetH1() const
                 Double_t GetH2() const
       virtual TGeoShape* GetMakeRuntimeShape(TGeoShape* mother, TGeoMatrix* mat) const
            virtual Int_t GetNmeshVertices() const
                 Double_t GetPhi() const
                 Double_t GetTheta() const
                 Double_t GetTl1() const
                 Double_t GetTl2() const
          virtual TClass* IsA() const
                TGeoTrap& operator=(const TGeoTrap&)
         virtual Double_t Safety(Double_t* point, Bool_t in = kTRUE) const
             virtual void SavePrimitive(ofstream& out, Option_t* option)
             virtual void ShowMembers(TMemberInspector& insp, char* parent)
             virtual void Streamer(TBuffer& b)
                     void StreamerNVirtual(TBuffer& b)
    protected:
      Double_t fTheta   theta angle
      Double_t fPhi     phi angle
      Double_t fH1      half length in y at low z
      Double_t fBl1     half length in x at low z and y low edge
      Double_t fTl1     half length in x at low z and y high edge
      Double_t fAlpha1  angle between centers of x edges an y axis at low z
      Double_t fH2      half length in y at high z
      Double_t fBl2     half length in x at high z and y low edge
      Double_t fTl2     half length in x at high z and y high edge
      Double_t fAlpha2  angle between centers of x edges an y axis at low z
 TGeoArb8 - a arbitrary trapezoid with less than 8 vertices standing on
   two paralel planes perpendicular to Z axis. Parameters :
            - dz - half length in Z;
            - xy[8][2] - vector of (x,y) coordinates of vertices
               - first four points (xy[i][j], i<4, j<2) are the (x,y)
                 coordinates of the vertices sitting on the -dz plane;
               - last four points (xy[i][j], i>=4, j<2) are the (x,y)
                 coordinates of the vertices sitting on the +dz plane;
   The order of defining the vertices of an arb8 is the following :
      - point 0 is connected with points 1,3,4
      - point 1 is connected with points 0,2,5
      - point 2 is connected with points 1,3,6
      - point 3 is connected with points 0,2,7
      - point 4 is connected with points 0,5,7
      - point 5 is connected with points 1,4,6
      - point 6 is connected with points 2,5,7
      - point 7 is connected with points 3,4,6
   Points can be identical in order to create shapes with less than
   8 vertices.
 TGeoTrap()
 dummy ctor
 TGeoTrap(Double_t dz, Double_t theta, Double_t phi)
         :TGeoArb8("", 0, 0)
 TGeoTrap(Double_t dz, Double_t theta, Double_t phi, Double_t h1,
              Double_t bl1, Double_t tl1, Double_t alpha1, Double_t h2, Double_t bl2, 
              Double_t tl2, Double_t alpha2)
         :TGeoArb8("", 0, 0)
 constructor.
 TGeoTrap(const char *name, Double_t dz, Double_t theta, Double_t phi, Double_t h1,
              Double_t bl1, Double_t tl1, Double_t alpha1, Double_t h2, Double_t bl2, 
              Double_t tl2, Double_t alpha2)
         :TGeoArb8(name, 0, 0)
 constructor with name
 ~TGeoTrap()
 destructor
Double_t DistFromInside(Double_t *point, Double_t *dir, Int_t iact, Double_t step, Double_t *safe) const
 compute distance from inside point to surface of the arb8
Double_t DistFromOutside(Double_t *point, Double_t *dir, Int_t iact, Double_t step, Double_t *safe) const
 compute distance from outside point to surface of the arb8
TGeoVolume* Divide(TGeoVolume *voldiv, const char *divname, Int_t iaxis, Int_t ndiv, 
                             Double_t start, Double_t step) 
--- Divide this trapezoid shape belonging to volume "voldiv" into ndiv volumes
 called divname, from start position with the given step. Only Z divisions
 are supported. For Z divisions just return the pointer to the volume to be
 divided. In case a wrong division axis is supplied, returns pointer to
 volume that was divided.
TGeoShape* GetMakeRuntimeShape(TGeoShape *mother, TGeoMatrix * /*mat*/) const
 in case shape has some negative parameters, these has to be computed
 in order to fit the mother
Double_t Safety(Double_t *point, Bool_t in) const
 Computes the closest distance from given point to this shape, according
 to option.
void SavePrimitive(ofstream &out, Option_t * /*option*/)
 Save a primitive as a C++ statement(s) on output stream "out".
Inline Functions
           Double_t GetTheta() const
           Double_t GetPhi() const
           Double_t GetH1() const
           Double_t GetBl1() const
           Double_t GetTl1() const
           Double_t GetAlpha1() const
           Double_t GetH2() const
           Double_t GetBl2() const
           Double_t GetTl2() const
           Double_t GetAlpha2() const
              Int_t GetNmeshVertices() const
            TClass* Class()
            TClass* IsA() const
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)
               void StreamerNVirtual(TBuffer& b)
           TGeoTrap TGeoTrap(const TGeoTrap&)
          TGeoTrap& operator=(const TGeoTrap&)
Author: Andrei Gheata 31/01/02
Last update: root/geom:$Name:  $:$Id: TGeoArb8.cxx,v 1.44 2005/09/04 15:12:08 brun Exp $
Copyright  (C) 1995-2000, Rene Brun and Fons Rademakers.               *
ROOT page - Class index - Class Hierarchy - 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.