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

TGeoShape Class Reference

#include <TGeoShape.h>

Inheritance diagram for TGeoShape:

Inheritance graph
[legend]
Collaboration diagram for TGeoShape:

Collaboration graph
[legend]
List of all members.

Public Types

enum  EShapeType {
  kGeoNoShape = 0, kGeoBad = BIT(5), kGeoRSeg = BIT(6), kGeoPhiSeg = BIT(7),
  kGeoThetaSeg = BIT(8), kGeoVisX = BIT(9), kGeoVisY = BIT(10), kGeoVisZ = BIT(11),
  kGeoRunTimeShape = BIT(12), kGeoInvalidShape = BIT(13), kGeoBox = BIT(15), kGeoPara = BIT(16),
  kGeoSph = BIT(17), kGeoTube = BIT(18), kGeoTubeSeg = BIT(19), kGeoCone = BIT(20),
  kGeoConeSeg = BIT(21), kGeoPcon = BIT(22), kGeoPgon = BIT(23), kGeoArb8 = BIT(24),
  kGeoEltu = BIT(25), kGeoTrap = BIT(26), kGeoCtub = BIT(27), kGeoTrd1 = BIT(28),
  kGeoTrd2 = BIT(29), kGeoComb = BIT(30)
}

Public Methods

 TGeoShape ()
 TGeoShape (const char *name)
virtual ~TGeoShape ()
virtual void ComputeBBox ()=0
virtual Bool_t Contains (Double_t *point) const=0
virtual Bool_t CouldBeCrossed (Double_t *point, Double_t *dir) const=0
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)=0
virtual Double_t DistToOut (Double_t *point, Double_t *dir, Int_t iact=1, Double_t step=0, Double_t *safe=0) const=0
virtual Double_t DistToIn (Double_t *point, Double_t *dir, Int_t iact=1, Double_t step=0, Double_t *safe=0) const=0
virtual Double_t DistToSurf (Double_t *point, Double_t *dir) const=0
virtual TGeoVolumeDivide (TGeoVolume *voldiv, const char *divname, Int_t iaxis, Int_t ndiv, Double_t start, Double_t step)=0
virtual const char * GetAxisName (Int_t iaxis) const=0
virtual Double_t GetAxisRange (Int_t iaxis, Double_t &xlo, Double_t &xhi) const=0
virtual void GetBoundingCylinder (Double_t *param) const=0
virtual Int_t GetByteCount () const=0
virtual Int_t GetFittingBox (const TGeoBBox *parambox, TGeoMatrix *mat, Double_t &dx, Double_t &dy, Double_t &dz) const=0
Int_t GetId () const
virtual TGeoShape * GetMakeRuntimeShape (TGeoShape *mother, TGeoMatrix *mat) const=0
virtual const char * GetName () const
virtual Bool_t IsComposite () const
virtual Bool_t IsCylType () const=0
Bool_t IsRunTimeShape () const
Bool_t IsValid () const
virtual Bool_t IsValidBox () const=0
virtual void InspectShape () const=0
virtual void * Make3DBuffer (const TGeoVolume *vol) const=0
virtual void NextCrossing (TGeoParamCurve *c, Double_t *point) const=0
virtual void Paint (Option_t *option)=0
virtual void PaintNext (TGeoHMatrix *glmat, Option_t *option)=0
virtual Double_t Safety (Double_t *point, Bool_t in=kTRUE) const=0
virtual void SetDimensions (Double_t *param)=0
void SetId (Int_t id)
virtual void SetPoints (Double_t *buff) const=0
virtual void SetPoints (Float_t *buff) const=0
void SetRuntime (Bool_t flag=kTRUE)
Int_t ShapeDistancetoPrimitive (Int_t numpoints, Int_t px, Int_t py) const
virtual void Sizeof3D () const=0

Static Public Methods

Double_t ClosenessToCorner (Double_t *point, Bool_t in, Double_t *vertex, Double_t *normals, Double_t *cldir)
Double_t DistToCorner (Double_t *point, Double_t *dir, Bool_t in, Double_t *vertex, Double_t *norm, Int_t &inorm)
Int_t GetVertexNumber (Bool_t vx, Bool_t vy, Bool_t vz)
Double_t SafetyPhi (Double_t *point, Bool_t in, Double_t c1, Double_t s1, Double_t c2, Double_t s2)

Static Public Attributes

const Double_t kRadDeg
const Double_t kDegRad
const Double_t kBig

Protected Attributes

Int_t fShapeId

Member Enumeration Documentation

enum TGeoShape::EShapeType
 

Enumeration values:
kGeoNoShape 
kGeoBad 
kGeoRSeg 
kGeoPhiSeg 
kGeoThetaSeg 
kGeoVisX 
kGeoVisY 
kGeoVisZ 
kGeoRunTimeShape 
kGeoInvalidShape 
kGeoBox 
kGeoPara 
kGeoSph 
kGeoTube 
kGeoTubeSeg 
kGeoCone 
kGeoConeSeg 
kGeoPcon 
kGeoPgon 
kGeoArb8 
kGeoEltu 
kGeoTrap 
kGeoCtub 
kGeoTrd1 
kGeoTrd2 
kGeoComb 

Definition at line 46 of file TGeoShape.h.


Constructor & Destructor Documentation

TGeoShape::TGeoShape  
 

TGeoShape::TGeoShape const char *    name
 

virtual TGeoShape::~TGeoShape   [virtual]
 


Member Function Documentation

Double_t TGeoShape::ClosenessToCorner Double_t *    point,
Bool_t    in,
Double_t *    vertex,
Double_t *    normals,
Double_t *    cldir
[static]
 

virtual void TGeoShape::ComputeBBox   [pure virtual]
 

Implemented in TGeoArb8, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

virtual Bool_t TGeoShape::Contains Double_t *    point const [pure virtual]
 

Implemented in TGeoArb8, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

Referenced by TGeoVolume::Contains().

virtual Bool_t TGeoShape::CouldBeCrossed Double_t *    point,
Double_t *    dir
const [pure virtual]
 

Implemented in TGeoBBox.

virtual Int_t TGeoShape::DistancetoPrimitive Int_t    px,
Int_t    py
[pure virtual]
 

Reimplemented from TObject.

Implemented in TGeoBBox, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTube, and TGeoTubeSeg.

Double_t TGeoShape::DistToCorner Double_t *    point,
Double_t *    dir,
Bool_t    in,
Double_t *    vertex,
Double_t *    norm,
Int_t &    inorm
[static]
 

virtual Double_t TGeoShape::DistToOut Double_t *    point,
Double_t *    dir,
Int_t    iact = 1,
Double_t    step = 0,
Double_t *    safe = 0
const [pure virtual]
 

Implemented in TGeoArb8, TGeoTrap, TGeoGtra, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

virtual Double_t TGeoShape::DistToIn Double_t *    point,
Double_t *    dir,
Int_t    iact = 1,
Double_t    step = 0,
Double_t *    safe = 0
const [pure virtual]
 

Implemented in TGeoArb8, TGeoTrap, TGeoGtra, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

virtual Double_t TGeoShape::DistToSurf Double_t *    point,
Double_t *    dir
const [pure virtual]
 

Implemented in TGeoArb8, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

virtual TGeoVolume* TGeoShape::Divide TGeoVolume   voldiv,
const char *    divname,
Int_t    iaxis,
Int_t    ndiv,
Double_t    start,
Double_t    step
[pure virtual]
 

Implemented in TGeoArb8, TGeoTrap, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

virtual const char* TGeoShape::GetAxisName Int_t    iaxis const [pure virtual]
 

Implemented in TGeoBBox, TGeoCone, TGeoPcon, TGeoSphere, and TGeoTube.

virtual Double_t TGeoShape::GetAxisRange Int_t    iaxis,
Double_t &    xlo,
Double_t &    xhi
const [pure virtual]
 

Implemented in TGeoArb8, TGeoBBox, TGeoCone, TGeoConeSeg, TGeoPara, TGeoPcon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

virtual void TGeoShape::GetBoundingCylinder Double_t *    param const [pure virtual]
 

Implemented in TGeoArb8, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, and TGeoTubeSeg.

virtual Int_t TGeoShape::GetByteCount   const [pure virtual]
 

Implemented in TGeoArb8, TGeoBBox, TGeoCone, TGeoConeSeg, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

virtual Int_t TGeoShape::GetFittingBox const TGeoBBox   parambox,
TGeoMatrix   mat,
Double_t &    dx,
Double_t &    dy,
Double_t &    dz
const [pure virtual]
 

Implemented in TGeoArb8, TGeoBBox, TGeoPara, TGeoTrd1, and TGeoTrd2.

Int_t TGeoShape::GetId   const
 

Definition at line 110 of file TGeoShape.h.

References fShapeId.

virtual TGeoShape* TGeoShape::GetMakeRuntimeShape TGeoShape *    mother,
TGeoMatrix   mat
const [pure virtual]
 

Implemented in TGeoArb8, TGeoTrap, TGeoGtra, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

virtual const char* TGeoShape::GetName   const [virtual]
 

Reimplemented from TNamed.

Int_t TGeoShape::GetVertexNumber Bool_t    vx,
Bool_t    vy,
Bool_t    vz
[static]
 

virtual Bool_t TGeoShape::IsComposite   const [virtual]
 

Reimplemented in TGeoCompositeShape.

Definition at line 114 of file TGeoShape.h.

virtual Bool_t TGeoShape::IsCylType   const [pure virtual]
 

Implemented in TGeoArb8, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoEltu, TGeoPara, TGeoPcon, TGeoSphere, TGeoTrd1, TGeoTrd2, and TGeoTube.

Bool_t TGeoShape::IsRunTimeShape   const
 

Definition at line 116 of file TGeoShape.h.

References kGeoRunTimeShape, and TObject::TestBit().

Referenced by TGeoVolume::IsRunTime().

Bool_t TGeoShape::IsValid   const
 

Definition at line 117 of file TGeoShape.h.

References kGeoInvalidShape, and TObject::TestBit().

Referenced by TGeoVolume::IsValid().

virtual Bool_t TGeoShape::IsValidBox   const [pure virtual]
 

Implemented in TGeoBBox.

virtual void TGeoShape::InspectShape   const [pure virtual]
 

Implemented in TGeoArb8, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

Referenced by TGeoVolume::InspectShape().

virtual void* TGeoShape::Make3DBuffer const TGeoVolume   vol const [pure virtual]
 

Implemented in TGeoBBox, TGeoCone, TGeoConeSeg, TGeoPcon, TGeoSphere, TGeoTube, and TGeoTubeSeg.

Referenced by TGeoVolume::Make3DBuffer().

virtual void TGeoShape::NextCrossing TGeoParamCurve   c,
Double_t *    point
const [pure virtual]
 

Implemented in TGeoArb8, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

virtual void TGeoShape::Paint Option_t *    option [pure virtual]
 

Reimplemented from TObject.

Implemented in TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTube, and TGeoTubeSeg.

virtual void TGeoShape::PaintNext TGeoHMatrix   glmat,
Option_t *    option
[pure virtual]
 

Implemented in TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTube, and TGeoTubeSeg.

virtual Double_t TGeoShape::Safety Double_t *    point,
Bool_t    in = kTRUE
const [pure virtual]
 

Implemented in TGeoArb8, TGeoTrap, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

Double_t TGeoShape::SafetyPhi Double_t *    point,
Bool_t    in,
Double_t    c1,
Double_t    s1,
Double_t    c2,
Double_t    s2
[static]
 

virtual void TGeoShape::SetDimensions Double_t *    param [pure virtual]
 

Implemented in TGeoArb8, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

void TGeoShape::SetId Int_t    id
 

Definition at line 127 of file TGeoShape.h.

References fShapeId.

virtual void TGeoShape::SetPoints Double_t *    buff const [pure virtual]
 

Implemented in TGeoArb8, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

virtual void TGeoShape::SetPoints Float_t *    buff const [pure virtual]
 

Implemented in TGeoArb8, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, and TGeoCtub.

void TGeoShape::SetRuntime Bool_t    flag = kTRUE
 

Definition at line 130 of file TGeoShape.h.

References kGeoRunTimeShape, and TObject::SetBit().

Int_t TGeoShape::ShapeDistancetoPrimitive Int_t    numpoints,
Int_t    px,
Int_t    py
const
 

virtual void TGeoShape::Sizeof3D   const [pure virtual]
 

Implemented in TGeoArb8, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoPara, TGeoPcon, TGeoPgon, TGeoSphere, TGeoTrd1, TGeoTrd2, TGeoTube, and TGeoTubeSeg.


Member Data Documentation

const Double_t TGeoShape::kRadDeg [static]
 

Definition at line 74 of file TGeoShape.h.

const Double_t TGeoShape::kDegRad [static]
 

Definition at line 75 of file TGeoShape.h.

const Double_t TGeoShape::kBig [static]
 

Definition at line 76 of file TGeoShape.h.

Int_t TGeoShape::fShapeId [protected]
 

Definition at line 79 of file TGeoShape.h.

Referenced by GetId(), and SetId().


The documentation for this class was generated from the following file:
Generated on Thu Dec 18 14:59:13 2003 for ROOT by doxygen1.2.16