TGeoBoolNode Class Reference

#include <TGeoBoolNode.h>

Inheritance diagram for TGeoBoolNode:

TObject TObject TGeoIntersection TGeoIntersection TGeoSubtraction TGeoSubtraction TGeoUnion TGeoUnion List of all members.

Public Types

enum  EGeoBoolType
enum  EGeoBoolType

Public Member Functions

 TGeoBoolNode ()
 TGeoBoolNode (const char *expr1, const char *expr2)
 TGeoBoolNode (TGeoShape *left, TGeoShape *right, TGeoMatrix *lmat=0, TGeoMatrix *rmat=0)
virtual ~TGeoBoolNode ()
virtual void ComputeBBox (Double_t &dx, Double_t &dy, Double_t &dz, Double_t *origin)=0
virtual void ComputeNormal (Double_t *point, Double_t *dir, Double_t *norm)=0
virtual Bool_t Contains (Double_t *point) const=0
virtual Int_t DistanceToPrimitive (Int_t px, Int_t py)=0
virtual Double_t DistFromInside (Double_t *point, Double_t *dir, Int_t iact=1, Double_t step=0, Double_t *safe=0) const=0
virtual Double_t DistFromOutside (Double_t *point, Double_t *dir, Int_t iact=1, Double_t step=0, Double_t *safe=0) const=0
virtual EGeoBoolType GetBooleanOperator () const=0
virtual Int_t GetNpoints ()=0
TGeoMatrixGetLeftMatrix () const
TGeoMatrixGetRightMatrix () const
TGeoShapeGetLeftShape () const
TGeoShapeGetRightShape () const
virtual void Paint (Option_t *option)
void RegisterMatrices ()
virtual Double_t Safety (Double_t *point, Bool_t in=kTRUE) const=0
virtual void SavePrimitive (ostream &out, Option_t *option="")
virtual void SetPoints (Double_t *points) const
virtual void SetPoints (Float_t *points) const
void SetSelected (Int_t sel)
virtual void Sizeof3D () const
 TGeoBoolNode ()
 TGeoBoolNode (const char *expr1, const char *expr2)
 TGeoBoolNode (TGeoShape *left, TGeoShape *right, TGeoMatrix *lmat=0, TGeoMatrix *rmat=0)
virtual ~TGeoBoolNode ()
virtual void ComputeBBox (Double_t &dx, Double_t &dy, Double_t &dz, Double_t *origin)=0
virtual void ComputeNormal (Double_t *point, Double_t *dir, Double_t *norm)=0
virtual Bool_t Contains (Double_t *point) const=0
virtual Int_t DistanceToPrimitive (Int_t px, Int_t py)=0
virtual Double_t DistFromInside (Double_t *point, Double_t *dir, Int_t iact=1, Double_t step=0, Double_t *safe=0) const=0
virtual Double_t DistFromOutside (Double_t *point, Double_t *dir, Int_t iact=1, Double_t step=0, Double_t *safe=0) const=0
virtual EGeoBoolType GetBooleanOperator () const=0
virtual Int_t GetNpoints ()=0
TGeoMatrixGetLeftMatrix () const
TGeoMatrixGetRightMatrix () const
TGeoShapeGetLeftShape () const
TGeoShapeGetRightShape () const
virtual void Paint (Option_t *option)
void RegisterMatrices ()
virtual Double_t Safety (Double_t *point, Bool_t in=kTRUE) const=0
virtual void SavePrimitive (ostream &out, Option_t *option="")
virtual void SetPoints (Double_t *points) const
virtual void SetPoints (Float_t *points) const
void SetSelected (Int_t sel)
virtual void Sizeof3D () const

Protected Member Functions

Bool_t MakeBranch (const char *expr, Bool_t left)
 array of mesh points
Bool_t MakeBranch (const char *expr, Bool_t left)
 array of mesh points

Protected Attributes

Int_t fSelected
TGeoShapefLeft
TGeoShapefRight
TGeoMatrixfLeftMat
TGeoMatrixfRightMat
Int_t fNpoints
Double_tfPoints
 number of points on the mesh
TGeoShapefLeft
TGeoShapefRight
TGeoMatrixfLeftMat
TGeoMatrixfRightMat
Double_tfPoints
 number of points on the mesh

Private Member Functions

 TGeoBoolNode (const TGeoBoolNode &)
TGeoBoolNodeoperator= (const TGeoBoolNode &)
 TGeoBoolNode (const TGeoBoolNode &)
TGeoBoolNodeoperator= (const TGeoBoolNode &)

Detailed Description

Definition at line 33 of file TGeoBoolNode.h.


Member Enumeration Documentation

enum TGeoBoolNode::EGeoBoolType

Definition at line 36 of file TGeoBoolNode.h.

enum TGeoBoolNode::EGeoBoolType

Definition at line 36 of file TGeoBoolNode.h.


Constructor & Destructor Documentation

TGeoBoolNode::TGeoBoolNode ( const TGeoBoolNode  )  [private]

TGeoBoolNode::TGeoBoolNode (  ) 

TGeoBoolNode::TGeoBoolNode ( const char *  expr1,
const char *  expr2 
)

Definition at line 67 of file TGeoBoolNode.cxx.

References fLeft, fLeftMat, fNpoints, fPoints, fRight, fRightMat, fSelected, kFALSE, kTRUE, and MakeBranch().

TGeoBoolNode::TGeoBoolNode ( TGeoShape left,
TGeoShape right,
TGeoMatrix lmat = 0,
TGeoMatrix rmat = 0 
)

Definition at line 86 of file TGeoBoolNode.cxx.

References TObject::Error(), fLeft, fLeftMat, fNpoints, fPoints, fRight, fRightMat, fSelected, gGeoIdentity, and TGeoMatrix::RegisterYourself().

TGeoBoolNode::~TGeoBoolNode (  )  [virtual]

Definition at line 111 of file TGeoBoolNode.cxx.

References fPoints.

TGeoBoolNode::TGeoBoolNode ( const TGeoBoolNode  )  [private]

TGeoBoolNode::TGeoBoolNode (  ) 

TGeoBoolNode::TGeoBoolNode ( const char *  expr1,
const char *  expr2 
)

TGeoBoolNode::TGeoBoolNode ( TGeoShape left,
TGeoShape right,
TGeoMatrix lmat = 0,
TGeoMatrix rmat = 0 
)

virtual TGeoBoolNode::~TGeoBoolNode (  )  [virtual]


Member Function Documentation

TGeoBoolNode& TGeoBoolNode::operator= ( const TGeoBoolNode  )  [private]

Bool_t TGeoBoolNode::MakeBranch ( const char *  expr,
Bool_t  left 
) [protected]

array of mesh points

Definition at line 119 of file TGeoBoolNode.cxx.

References TString::Data(), TObject::Error(), TObjArray::FindObject(), fLeft, fLeftMat, fRight, fRightMat, TGeoManager::GetListOfMatrices(), TGeoManager::GetListOfShapes(), gGeoIdentity, gGeoManager, TGeoShape::IsValid(), kFALSE, kTRUE, TString::Length(), and TGeoManager::Parse().

Referenced by TGeoBoolNode().

virtual void TGeoBoolNode::ComputeBBox ( Double_t dx,
Double_t dy,
Double_t dz,
Double_t origin 
) [pure virtual]

Referenced by TGeoCompositeShape::ComputeBBox().

virtual void TGeoBoolNode::ComputeNormal ( Double_t point,
Double_t dir,
Double_t norm 
) [pure virtual]

Referenced by TGeoCompositeShape::ComputeNormal().

virtual Bool_t TGeoBoolNode::Contains ( Double_t point  )  const [pure virtual]

Referenced by TGeoCompositeShape::Contains().

virtual Int_t TGeoBoolNode::DistanceToPrimitive ( Int_t  px,
Int_t  py 
) [pure virtual]

virtual Double_t TGeoBoolNode::DistFromInside ( Double_t point,
Double_t dir,
Int_t  iact = 1,
Double_t  step = 0,
Double_t safe = 0 
) const [pure virtual]

Referenced by TGeoCompositeShape::DistFromInside().

virtual Double_t TGeoBoolNode::DistFromOutside ( Double_t point,
Double_t dir,
Int_t  iact = 1,
Double_t  step = 0,
Double_t safe = 0 
) const [pure virtual]

Referenced by TGeoCompositeShape::DistFromOutside().

virtual EGeoBoolType TGeoBoolNode::GetBooleanOperator (  )  const [pure virtual]

virtual Int_t TGeoBoolNode::GetNpoints (  )  [pure virtual]

Referenced by TGeoCompositeShape::GetNmeshVertices(), and SetPoints().

TGeoMatrix* TGeoBoolNode::GetLeftMatrix (  )  const [inline]

Definition at line 74 of file TGeoBoolNode.h.

References fLeftMat.

Referenced by TGeoCompositeShape::RegisterYourself().

TGeoMatrix* TGeoBoolNode::GetRightMatrix (  )  const [inline]

Definition at line 75 of file TGeoBoolNode.h.

References fRightMat.

Referenced by TGeoCompositeShape::RegisterYourself().

TGeoShape* TGeoBoolNode::GetLeftShape (  )  const [inline]

Definition at line 76 of file TGeoBoolNode.h.

References fLeft.

Referenced by TGeoCompositeShape::RegisterYourself().

TGeoShape* TGeoBoolNode::GetRightShape (  )  const [inline]

Definition at line 77 of file TGeoBoolNode.h.

References fRight.

Referenced by TGeoCompositeShape::RegisterYourself().

void TGeoBoolNode::Paint ( Option_t option  )  [virtual]

Reimplemented from TObject.

Definition at line 189 of file TGeoBoolNode.cxx.

References TVirtualViewer3D::AddObject(), fLeft, fLeftMat, fRight, fRightMat, TGeoShape::GetTransform(), gPad, TBuffer3D::kAll, kFALSE, and TGeoHMatrix::Multiply().

Referenced by ClassImp(), TEveGeoPolyShape::Construct(), TEveGeoShape::Paint(), and TGeoCompositeShape::PaintComposite().

void TGeoBoolNode::RegisterMatrices (  ) 

Definition at line 231 of file TGeoBoolNode.cxx.

References fLeft, fLeftMat, fRight, fRightMat, TGeoShape::IsComposite(), TGeoMatrix::IsIdentity(), and TGeoMatrix::RegisterYourself().

virtual Double_t TGeoBoolNode::Safety ( Double_t point,
Bool_t  in = kTRUE 
) const [pure virtual]

Referenced by TGeoCompositeShape::Safety().

void TGeoBoolNode::SavePrimitive ( ostream &  out,
Option_t option = "" 
) [virtual]

Reimplemented from TObject.

Definition at line 241 of file TGeoBoolNode.cxx.

References fLeft, fLeftMat, fRight, fRightMat, TGeoMatrix::IsIdentity(), TGeoMatrix::RegisterYourself(), and TObject::SavePrimitive().

Referenced by TGeoIntersection::SavePrimitive(), TGeoCompositeShape::SavePrimitive(), TGeoUnion::SavePrimitive(), and TGeoSubtraction::SavePrimitive().

void TGeoBoolNode::SetPoints ( Double_t points  )  const [virtual]

Definition at line 257 of file TGeoBoolNode.cxx.

References fPoints, and GetNpoints().

Referenced by TGeoCompositeShape::SetPoints().

void TGeoBoolNode::SetPoints ( Float_t points  )  const [virtual]

Definition at line 266 of file TGeoBoolNode.cxx.

References fPoints, GetNpoints(), and i.

void TGeoBoolNode::SetSelected ( Int_t  sel  )  [inline]

Definition at line 84 of file TGeoBoolNode.h.

References fSelected.

Referenced by TGeoSubtraction::Contains(), TGeoUnion::Contains(), TGeoUnion::DistFromInside(), TGeoSubtraction::DistFromInside(), TGeoIntersection::DistFromInside(), TGeoIntersection::DistFromOutside(), TGeoSubtraction::DistFromOutside(), and TGeoUnion::DistFromOutside().

void TGeoBoolNode::Sizeof3D (  )  const [virtual]

Definition at line 275 of file TGeoBoolNode.cxx.

References fLeft, fRight, and TGeoShape::Sizeof3D().

Referenced by TGeoIntersection::Sizeof3D(), TGeoUnion::Sizeof3D(), TGeoSubtraction::Sizeof3D(), and TGeoCompositeShape::Sizeof3D().

TGeoBoolNode& TGeoBoolNode::operator= ( const TGeoBoolNode  )  [private]

Bool_t TGeoBoolNode::MakeBranch ( const char *  expr,
Bool_t  left 
) [protected]

array of mesh points

virtual void TGeoBoolNode::ComputeBBox ( Double_t dx,
Double_t dy,
Double_t dz,
Double_t origin 
) [pure virtual]

virtual void TGeoBoolNode::ComputeNormal ( Double_t point,
Double_t dir,
Double_t norm 
) [pure virtual]

virtual Bool_t TGeoBoolNode::Contains ( Double_t point  )  const [pure virtual]

virtual Int_t TGeoBoolNode::DistanceToPrimitive ( Int_t  px,
Int_t  py 
) [pure virtual]

virtual Double_t TGeoBoolNode::DistFromInside ( Double_t point,
Double_t dir,
Int_t  iact = 1,
Double_t  step = 0,
Double_t safe = 0 
) const [pure virtual]

virtual Double_t TGeoBoolNode::DistFromOutside ( Double_t point,
Double_t dir,
Int_t  iact = 1,
Double_t  step = 0,
Double_t safe = 0 
) const [pure virtual]

virtual EGeoBoolType TGeoBoolNode::GetBooleanOperator (  )  const [pure virtual]

virtual Int_t TGeoBoolNode::GetNpoints (  )  [pure virtual]

TGeoMatrix* TGeoBoolNode::GetLeftMatrix (  )  const [inline]

Definition at line 74 of file TGeoBoolNode.h.

References fLeftMat.

TGeoMatrix* TGeoBoolNode::GetRightMatrix (  )  const [inline]

Definition at line 75 of file TGeoBoolNode.h.

References fRightMat.

TGeoShape* TGeoBoolNode::GetLeftShape (  )  const [inline]

Definition at line 76 of file TGeoBoolNode.h.

References fLeft.

TGeoShape* TGeoBoolNode::GetRightShape (  )  const [inline]

Definition at line 77 of file TGeoBoolNode.h.

References fRight.

virtual void TGeoBoolNode::Paint ( Option_t option  )  [virtual]

Reimplemented from TObject.

void TGeoBoolNode::RegisterMatrices (  ) 

virtual Double_t TGeoBoolNode::Safety ( Double_t point,
Bool_t  in = kTRUE 
) const [pure virtual]

virtual void TGeoBoolNode::SavePrimitive ( ostream &  out,
Option_t option = "" 
) [virtual]

Reimplemented from TObject.

virtual void TGeoBoolNode::SetPoints ( Double_t points  )  const [virtual]

virtual void TGeoBoolNode::SetPoints ( Float_t points  )  const [virtual]

void TGeoBoolNode::SetSelected ( Int_t  sel  )  [inline]

Definition at line 84 of file TGeoBoolNode.h.

References fSelected.

virtual void TGeoBoolNode::Sizeof3D (  )  const [virtual]


Member Data Documentation

Int_t TGeoBoolNode::fSelected [protected]

Definition at line 46 of file TGeoBoolNode.h.

Referenced by TGeoSubtraction::ComputeNormal(), TGeoIntersection::ComputeNormal(), TGeoUnion::ComputeNormal(), SetSelected(), and TGeoBoolNode().

TGeoShape* TGeoBoolNode::fLeft [protected]

Definition at line 47 of file TGeoBoolNode.h.

Referenced by TGeoUnion::ComputeBBox(), TGeoSubtraction::ComputeBBox(), TGeoIntersection::ComputeBBox(), TGeoSubtraction::ComputeNormal(), TGeoIntersection::ComputeNormal(), TGeoUnion::ComputeNormal(), TGeoSubtraction::Contains(), TGeoIntersection::Contains(), TGeoUnion::Contains(), TGeoUnion::DistFromInside(), TGeoSubtraction::DistFromInside(), TGeoIntersection::DistFromInside(), TGeoIntersection::DistFromOutside(), TGeoSubtraction::DistFromOutside(), TGeoUnion::DistFromOutside(), GetLeftShape(), TGeoSubtraction::GetNpoints(), TGeoUnion::GetNpoints(), TGeoIntersection::GetNpoints(), MakeBranch(), Paint(), RegisterMatrices(), TGeoSubtraction::Safety(), TGeoUnion::Safety(), TGeoIntersection::Safety(), TGeoIntersection::SavePrimitive(), SavePrimitive(), TGeoUnion::SavePrimitive(), TGeoSubtraction::SavePrimitive(), Sizeof3D(), TGeoBoolNode(), and TGeoIntersection::TGeoIntersection().

TGeoShape* TGeoBoolNode::fRight [protected]

Definition at line 48 of file TGeoBoolNode.h.

Referenced by TGeoUnion::ComputeBBox(), TGeoIntersection::ComputeBBox(), TGeoSubtraction::ComputeNormal(), TGeoIntersection::ComputeNormal(), TGeoUnion::ComputeNormal(), TGeoSubtraction::Contains(), TGeoIntersection::Contains(), TGeoUnion::Contains(), TGeoUnion::DistFromInside(), TGeoSubtraction::DistFromInside(), TGeoIntersection::DistFromInside(), TGeoIntersection::DistFromOutside(), TGeoSubtraction::DistFromOutside(), TGeoUnion::DistFromOutside(), TGeoSubtraction::GetNpoints(), TGeoUnion::GetNpoints(), TGeoIntersection::GetNpoints(), GetRightShape(), MakeBranch(), Paint(), RegisterMatrices(), TGeoSubtraction::Safety(), TGeoUnion::Safety(), TGeoIntersection::Safety(), TGeoIntersection::SavePrimitive(), SavePrimitive(), TGeoUnion::SavePrimitive(), TGeoSubtraction::SavePrimitive(), Sizeof3D(), TGeoBoolNode(), and TGeoIntersection::TGeoIntersection().

TGeoMatrix* TGeoBoolNode::fLeftMat [protected]

Definition at line 49 of file TGeoBoolNode.h.

Referenced by TGeoUnion::ComputeBBox(), TGeoSubtraction::ComputeBBox(), TGeoIntersection::ComputeBBox(), TGeoSubtraction::ComputeNormal(), TGeoIntersection::ComputeNormal(), TGeoUnion::ComputeNormal(), TGeoSubtraction::Contains(), TGeoIntersection::Contains(), TGeoUnion::Contains(), TGeoUnion::DistFromInside(), TGeoSubtraction::DistFromInside(), TGeoIntersection::DistFromInside(), TGeoIntersection::DistFromOutside(), TGeoSubtraction::DistFromOutside(), TGeoUnion::DistFromOutside(), GetLeftMatrix(), TGeoSubtraction::GetNpoints(), TGeoUnion::GetNpoints(), TGeoIntersection::GetNpoints(), MakeBranch(), Paint(), RegisterMatrices(), TGeoSubtraction::Safety(), TGeoUnion::Safety(), TGeoIntersection::Safety(), TGeoIntersection::SavePrimitive(), SavePrimitive(), TGeoUnion::SavePrimitive(), TGeoSubtraction::SavePrimitive(), and TGeoBoolNode().

TGeoMatrix* TGeoBoolNode::fRightMat [protected]

Definition at line 50 of file TGeoBoolNode.h.

Referenced by TGeoUnion::ComputeBBox(), TGeoIntersection::ComputeBBox(), TGeoSubtraction::ComputeNormal(), TGeoIntersection::ComputeNormal(), TGeoUnion::ComputeNormal(), TGeoSubtraction::Contains(), TGeoIntersection::Contains(), TGeoUnion::Contains(), TGeoUnion::DistFromInside(), TGeoSubtraction::DistFromInside(), TGeoIntersection::DistFromInside(), TGeoIntersection::DistFromOutside(), TGeoSubtraction::DistFromOutside(), TGeoUnion::DistFromOutside(), TGeoSubtraction::GetNpoints(), TGeoUnion::GetNpoints(), TGeoIntersection::GetNpoints(), GetRightMatrix(), MakeBranch(), Paint(), RegisterMatrices(), TGeoSubtraction::Safety(), TGeoUnion::Safety(), TGeoIntersection::Safety(), TGeoIntersection::SavePrimitive(), SavePrimitive(), TGeoUnion::SavePrimitive(), TGeoSubtraction::SavePrimitive(), and TGeoBoolNode().

Int_t TGeoBoolNode::fNpoints [protected]

Definition at line 51 of file TGeoBoolNode.h.

Referenced by TGeoSubtraction::GetNpoints(), TGeoUnion::GetNpoints(), TGeoIntersection::GetNpoints(), and TGeoBoolNode().

Double_t* TGeoBoolNode::fPoints [protected]

number of points on the mesh

Definition at line 52 of file TGeoBoolNode.h.

Referenced by TGeoSubtraction::GetNpoints(), TGeoUnion::GetNpoints(), TGeoIntersection::GetNpoints(), SetPoints(), TGeoBoolNode(), and ~TGeoBoolNode().

TGeoShape* TGeoBoolNode::fLeft [protected]

Definition at line 47 of file TGeoBoolNode.h.

TGeoShape* TGeoBoolNode::fRight [protected]

Definition at line 48 of file TGeoBoolNode.h.

TGeoMatrix* TGeoBoolNode::fLeftMat [protected]

Definition at line 49 of file TGeoBoolNode.h.

TGeoMatrix* TGeoBoolNode::fRightMat [protected]

Definition at line 50 of file TGeoBoolNode.h.

Double_t* TGeoBoolNode::fPoints [protected]

number of points on the mesh

Definition at line 52 of file TGeoBoolNode.h.


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:38:37 2011 for ROOT_528-00b_version by  doxygen 1.5.1