Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
G4UBox Class Reference

#include <G4UBox.hh>

Inheritance diagram for G4UBox:
G4USolid G4VSolid

Public Member Functions

 G4UBox (const G4String &pName, G4double pX, G4double pY, G4double pZ)
 
 ~G4UBox ()
 
void ComputeDimensions (G4VPVParameterisation *p, const G4int n, const G4VPhysicalVolume *pRep)
 
G4VSolid * Clone () const
 
UBox * GetShape () const
 
G4double GetXHalfLength () const
 
G4double GetYHalfLength () const
 
G4double GetZHalfLength () const
 
void SetXHalfLength (G4double dx)
 
void SetYHalfLength (G4double dy)
 
void SetZHalfLength (G4double dz)
 
 G4UBox (__void__ &)
 
 G4UBox (const G4UBox &rhs)
 
G4UBox & operator= (const G4UBox &rhs)
 
- Public Member Functions inherited from G4USolid
 G4USolid (const G4String &pName, VUSolid *shape)
 
virtual ~G4USolid ()
 
G4bool operator== (const G4USolid &s) const
 
virtual G4bool CalculateExtent (const EAxis pAxis, const G4VoxelLimits &pVoxelLimit, const G4AffineTransform &pTransform, G4double &pMin, G4double &pMax) const
 
virtual EInside Inside (const G4ThreeVector &p) const
 
virtual G4ThreeVector SurfaceNormal (const G4ThreeVector &p) const
 
virtual G4double DistanceToIn (const G4ThreeVector &p, const G4ThreeVector &v) const
 
virtual G4double DistanceToIn (const G4ThreeVector &p) const
 
virtual G4double DistanceToOut (const G4ThreeVector &p, const G4ThreeVector &v, const G4bool calcNorm=false, G4bool *validNorm=0, G4ThreeVector *n=0) const
 
virtual G4double DistanceToOut (const G4ThreeVector &p) const
 
virtual G4double GetCubicVolume ()
 
virtual G4double GetSurfaceArea ()
 
virtual G4GeometryType GetEntityType () const
 
virtual G4ThreeVector GetPointOnSurface () const
 
virtual std::ostream & StreamInfo (std::ostream &os) const
 
virtual void DescribeYourselfTo (G4VGraphicsScene &scene) const
 
virtual G4VisExtent GetExtent () const
 
G4Polyhedron * CreatePolyhedron () const
 
virtual G4Polyhedron * GetPolyhedron () const
 
 G4USolid (__void__ &)
 
 G4USolid (const G4USolid &rhs)
 
G4USolid & operator= (const G4USolid &rhs)
 
VUSolid * GetSolid () const
 
- Public Member Functions inherited from G4VSolid
 G4VSolid (const G4String &name)
 
virtual ~G4VSolid ()
 
G4bool operator== (const G4VSolid &s) const
 
G4String GetName () const
 
void SetName (const G4String &name)
 
G4double GetTolerance () const
 
void DumpInfo () const
 
virtual const G4VSolid * GetConstituentSolid (G4int no) const
 
virtual G4VSolid * GetConstituentSolid (G4int no)
 
virtual const G4DisplacedSolid * GetDisplacedSolidPtr () const
 
virtual G4DisplacedSolid * GetDisplacedSolidPtr ()
 
 G4VSolid (__void__ &)
 
 G4VSolid (const G4VSolid &rhs)
 
G4VSolid & operator= (const G4VSolid &rhs)
 

Additional Inherited Members

- Protected Member Functions inherited from G4USolid
G4ThreeVectorList * CreateRotatedVertices (const G4AffineTransform &pT) const
 
- Protected Member Functions inherited from G4VSolid
void CalculateClippedPolygonExtent (G4ThreeVectorList &pPolygon, const G4VoxelLimits &pVoxelLimit, const EAxis pAxis, G4double &pMin, G4double &pMax) const
 
void ClipCrossSection (G4ThreeVectorList *pVertices, const G4int pSectionIndex, const G4VoxelLimits &pVoxelLimit, const EAxis pAxis, G4double &pMin, G4double &pMax) const
 
void ClipBetweenSections (G4ThreeVectorList *pVertices, const G4int pSectionIndex, const G4VoxelLimits &pVoxelLimit, const EAxis pAxis, G4double &pMin, G4double &pMax) const
 
void ClipPolygon (G4ThreeVectorList &pPolygon, const G4VoxelLimits &pVoxelLimit, const EAxis pAxis) const
 
G4double EstimateCubicVolume (G4int nStat, G4double epsilon) const
 
G4double EstimateSurfaceArea (G4int nStat, G4double ell) const
 
- Protected Attributes inherited from G4USolid
VUSolid * fShape
 
G4Polyhedron * fPolyhedron
 
- Protected Attributes inherited from G4VSolid
G4double kCarTolerance
 

Detailed Description

Definition at line 48 of file G4UBox.hh.

Constructor & Destructor Documentation

G4UBox::G4UBox ( const G4String &  pName,
G4double  pX,
G4double  pY,
G4double  pZ 
)

Definition at line 42 of file G4UBox.cc.

Referenced by Clone().

46  : G4USolid(pName, new UBox(pName, pX, pY, pZ))
47 {
48 }
Definition: UBox.hh:33
G4USolid(const G4String &pName, VUSolid *shape)
Definition: G4USolid.cc:44
G4UBox::~G4UBox ( )

Definition at line 64 of file G4UBox.cc.

65 {
66 }
G4UBox::G4UBox ( __void__ &  a)

Definition at line 55 of file G4UBox.cc.

56  : G4USolid(a)
57 {
58 }
G4USolid(const G4String &pName, VUSolid *shape)
Definition: G4USolid.cc:44
G4UBox::G4UBox ( const G4UBox &  rhs)

Definition at line 72 of file G4UBox.cc.

73  : G4USolid(rhs)
74 {
75 }
G4USolid(const G4String &pName, VUSolid *shape)
Definition: G4USolid.cc:44

Member Function Documentation

G4VSolid * G4UBox::Clone ( ) const
virtual

Reimplemented from G4USolid.

Definition at line 110 of file G4UBox.cc.

References G4UBox().

111 {
112  return new G4UBox(*this);
113 }
G4UBox(const G4String &pName, G4double pX, G4double pY, G4double pZ)
Definition: G4UBox.cc:42
void G4UBox::ComputeDimensions ( G4VPVParameterisation *  p,
const G4int  n,
const G4VPhysicalVolume *  pRep 
)
virtual

Reimplemented from G4USolid.

Definition at line 99 of file G4UBox.cc.

References G4VPVParameterisation::ComputeDimensions().

102 {
103  p->ComputeDimensions(*(G4Box*)this,n,pRep);
104 }
Definition: G4Box.hh:63
const G4int n
virtual void ComputeDimensions(G4Box &, const G4int, const G4VPhysicalVolume *) const
UBox * G4UBox::GetShape ( ) const
inline

Definition at line 89 of file G4UBox.hh.

References G4USolid::fShape.

Referenced by GetXHalfLength(), GetYHalfLength(), GetZHalfLength(), SetXHalfLength(), SetYHalfLength(), and SetZHalfLength().

90 {
91  return (UBox*) fShape;
92 }
Definition: UBox.hh:33
VUSolid * fShape
Definition: G4USolid.hh:182
G4double G4UBox::GetXHalfLength ( ) const
inline

Definition at line 94 of file G4UBox.hh.

References GetShape(), and UBox::GetXHalfLength().

95 {
96  return GetShape()->GetXHalfLength();
97 }
UBox * GetShape() const
Definition: G4UBox.hh:89
double GetXHalfLength() const
Definition: UBox.hh:113
G4double G4UBox::GetYHalfLength ( ) const
inline

Definition at line 98 of file G4UBox.hh.

References GetShape(), and UBox::GetYHalfLength().

99 {
100  return GetShape()->GetYHalfLength();
101 }
UBox * GetShape() const
Definition: G4UBox.hh:89
double GetYHalfLength() const
Definition: UBox.hh:117
G4double G4UBox::GetZHalfLength ( ) const
inline

Definition at line 102 of file G4UBox.hh.

References GetShape(), and UBox::GetZHalfLength().

103 {
104  return GetShape()->GetZHalfLength();
105 }
UBox * GetShape() const
Definition: G4UBox.hh:89
double GetZHalfLength() const
Definition: UBox.hh:121
G4UBox & G4UBox::operator= ( const G4UBox &  rhs)

Definition at line 81 of file G4UBox.cc.

References G4USolid::operator=().

82 {
83  // Check assignment to self
84  //
85  if (this == &rhs) { return *this; }
86 
87  // Copy base class data
88  //
90 
91  return *this;
92 }
G4USolid & operator=(const G4USolid &rhs)
Definition: G4USolid.cc:370
void G4UBox::SetXHalfLength ( G4double  dx)
inline

Definition at line 107 of file G4UBox.hh.

References G4USolid::fPolyhedron, GetShape(), and UBox::SetXHalfLength().

108 {
109  GetShape()->SetXHalfLength(dx);
110  fPolyhedron = 0;
111 }
UBox * GetShape() const
Definition: G4UBox.hh:89
void SetXHalfLength(double dx)
Definition: UBox.cc:488
G4Polyhedron * fPolyhedron
Definition: G4USolid.hh:183
void G4UBox::SetYHalfLength ( G4double  dy)
inline

Definition at line 112 of file G4UBox.hh.

References G4USolid::fPolyhedron, GetShape(), and UBox::SetYHalfLength().

113 {
114  GetShape()->SetYHalfLength(dy);
115  fPolyhedron = 0;
116 }
UBox * GetShape() const
Definition: G4UBox.hh:89
G4Polyhedron * fPolyhedron
Definition: G4USolid.hh:183
void SetYHalfLength(double dy)
Definition: UBox.cc:508
void G4UBox::SetZHalfLength ( G4double  dz)
inline

Definition at line 117 of file G4UBox.hh.

References G4USolid::fPolyhedron, GetShape(), and UBox::SetZHalfLength().

118 {
119  GetShape()->SetZHalfLength(dz);
120  fPolyhedron = 0;
121 }
UBox * GetShape() const
Definition: G4UBox.hh:89
G4Polyhedron * fPolyhedron
Definition: G4USolid.hh:183
void SetZHalfLength(double dz)
Definition: UBox.cc:528

The documentation for this class was generated from the following files: