ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4ReflectedSolid Class Reference

#include <geant4/tree/geant4-10.6-release/source/geometry/management/include/G4ReflectedSolid.hh>

+ Inheritance diagram for G4ReflectedSolid:
+ Collaboration diagram for G4ReflectedSolid:

Public Member Functions

 G4ReflectedSolid (const G4String &pName, G4VSolid *pSolid, const G4Transform3D &transform)
 
virtual ~G4ReflectedSolid ()
 
EInside Inside (const G4ThreeVector &p) const
 
void BoundingLimits (G4ThreeVector &pMin, G4ThreeVector &pMax) const
 
G4bool CalculateExtent (const EAxis pAxis, const G4VoxelLimits &pVoxelLimit, const G4AffineTransform &pTransform, G4double &pMin, G4double &pMax) const
 
G4ThreeVector SurfaceNormal (const G4ThreeVector &p) const
 
G4double DistanceToIn (const G4ThreeVector &p, const G4ThreeVector &v) const
 
G4double DistanceToIn (const G4ThreeVector &p) const
 
G4double DistanceToOut (const G4ThreeVector &p, const G4ThreeVector &v, const G4bool calcNorm=false, G4bool *validNorm=nullptr, G4ThreeVector *n=nullptr) const
 
G4double DistanceToOut (const G4ThreeVector &p) const
 
void ComputeDimensions (G4VPVParameterisation *p, const G4int n, const G4VPhysicalVolume *pRep)
 
G4ThreeVector GetPointOnSurface () const
 
G4VSolidClone () const
 
virtual G4GeometryType GetEntityType () const
 
virtual const G4ReflectedSolidGetReflectedSolidPtr () const
 
virtual G4ReflectedSolidGetReflectedSolidPtr ()
 
G4VSolidGetConstituentMovedSolid () const
 
G4Transform3D GetTransform3D () const
 
G4Transform3D GetDirectTransform3D () const
 
void SetDirectTransform3D (G4Transform3D &)
 
std::ostream & StreamInfo (std::ostream &os) const
 
 G4ReflectedSolid (const G4ReflectedSolid &rhs)
 
G4ReflectedSolidoperator= (const G4ReflectedSolid &rhs)
 
void DescribeYourselfTo (G4VGraphicsScene &scene) const
 
G4PolyhedronCreatePolyhedron () const
 
G4PolyhedronGetPolyhedron () 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
 
virtual G4double GetCubicVolume ()
 
virtual G4double GetSurfaceArea ()
 
void DumpInfo () const
 
virtual G4VisExtent GetExtent () const
 
virtual const G4VSolidGetConstituentSolid (G4int no) const
 
virtual G4VSolidGetConstituentSolid (G4int no)
 
virtual const G4DisplacedSolidGetDisplacedSolidPtr () const
 
virtual G4DisplacedSolidGetDisplacedSolidPtr ()
 
 G4VSolid (__void__ &)
 
 G4VSolid (const G4VSolid &rhs)
 
G4VSolidoperator= (const G4VSolid &rhs)
 
G4double EstimateCubicVolume (G4int nStat, G4double epsilon) const
 
G4double EstimateSurfaceArea (G4int nStat, G4double ell) const
 

Protected Attributes

G4VSolidfPtrSolid = nullptr
 
G4Transform3DfDirectTransform3D = nullptr
 
G4bool fRebuildPolyhedron = false
 
G4PolyhedronfpPolyhedron = nullptr
 
- Protected Attributes inherited from G4VSolid
G4double kCarTolerance
 

Additional Inherited Members

- 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
 

Detailed Description

Definition at line 42 of file G4ReflectedSolid.hh.

View newest version in sPHENIX GitHub at line 42 of file G4ReflectedSolid.hh

Constructor & Destructor Documentation

G4ReflectedSolid::G4ReflectedSolid ( const G4String pName,
G4VSolid pSolid,
const G4Transform3D transform 
)

Definition at line 51 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 51 of file G4ReflectedSolid.cc

References fDirectTransform3D, and fPtrSolid.

Referenced by Clone().

+ Here is the caller graph for this function:

G4ReflectedSolid::~G4ReflectedSolid ( )
virtual

Definition at line 63 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 63 of file G4ReflectedSolid.cc

References fDirectTransform3D, and fpPolyhedron.

G4ReflectedSolid::G4ReflectedSolid ( const G4ReflectedSolid rhs)

Definition at line 72 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 72 of file G4ReflectedSolid.cc

References fDirectTransform3D.

Member Function Documentation

G4bool G4ReflectedSolid::CalculateExtent ( const EAxis  pAxis,
const G4VoxelLimits pVoxelLimit,
const G4AffineTransform pTransform,
G4double pMin,
G4double pMax 
) const
virtual
G4VSolid * G4ReflectedSolid::Clone ( ) const
virtual

Reimplemented from G4VSolid.

Definition at line 366 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 366 of file G4ReflectedSolid.cc

References G4ReflectedSolid().

+ Here is the call graph for this function:

void G4ReflectedSolid::ComputeDimensions ( G4VPVParameterisation p,
const G4int  n,
const G4VPhysicalVolume pRep 
)
virtual

Reimplemented from G4VSolid.

Definition at line 341 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 341 of file G4ReflectedSolid.cc

References G4VSolid::DumpInfo(), FatalException, and G4Exception().

+ Here is the call graph for this function:

G4Polyhedron * G4ReflectedSolid::CreatePolyhedron ( ) const
virtual

Reimplemented from G4VSolid.

Definition at line 413 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 413 of file G4ReflectedSolid.cc

References G4VSolid::CreatePolyhedron(), fDirectTransform3D, fPtrSolid, G4endl, G4Exception(), G4VSolid::GetName(), JustWarning, message(), and HepPolyhedron::Transform().

Referenced by GetPolyhedron().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4ReflectedSolid::DescribeYourselfTo ( G4VGraphicsScene scene) const
virtual

Implements G4VSolid.

Definition at line 403 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 403 of file G4ReflectedSolid.cc

References G4VGraphicsScene::AddSolid().

+ Here is the call graph for this function:

G4double G4ReflectedSolid::DistanceToIn ( const G4ThreeVector p,
const G4ThreeVector v 
) const
virtual

Implements G4VSolid.

Definition at line 280 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 280 of file G4ReflectedSolid.cc

References G4VSolid::DistanceToIn(), and fPtrSolid.

+ Here is the call graph for this function:

G4double G4ReflectedSolid::DistanceToIn ( const G4ThreeVector p) const
virtual

Implements G4VSolid.

Definition at line 294 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 294 of file G4ReflectedSolid.cc

References G4VSolid::DistanceToIn(), and fPtrSolid.

+ Here is the call graph for this function:

G4double G4ReflectedSolid::DistanceToOut ( const G4ThreeVector p,
const G4ThreeVector v,
const G4bool  calcNorm = false,
G4bool validNorm = nullptr,
G4ThreeVector n = nullptr 
) const
virtual

Implements G4VSolid.

Definition at line 305 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 305 of file G4ReflectedSolid.cc

References G4VSolid::DistanceToOut(), and fPtrSolid.

+ Here is the call graph for this function:

G4double G4ReflectedSolid::DistanceToOut ( const G4ThreeVector p) const
virtual

Implements G4VSolid.

Definition at line 330 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 330 of file G4ReflectedSolid.cc

References G4VSolid::DistanceToOut(), and fPtrSolid.

+ Here is the call graph for this function:

G4VSolid * G4ReflectedSolid::GetConstituentMovedSolid ( ) const

Definition at line 120 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 120 of file G4ReflectedSolid.cc

References fPtrSolid.

Referenced by G4tgbGeometryDumper::DumpSolid().

+ Here is the caller graph for this function:

G4Transform3D G4ReflectedSolid::GetDirectTransform3D ( ) const

Definition at line 133 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 133 of file G4ReflectedSolid.cc

References Acts::aTransform, and fDirectTransform3D.

G4GeometryType G4ReflectedSolid::GetEntityType ( ) const
virtual

Implements G4VSolid.

Definition at line 105 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 105 of file G4ReflectedSolid.cc

Referenced by StreamInfo().

+ Here is the caller graph for this function:

G4ThreeVector G4ReflectedSolid::GetPointOnSurface ( ) const
virtual

Reimplemented from G4VSolid.

Definition at line 356 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 356 of file G4ReflectedSolid.cc

References fDirectTransform3D, fPtrSolid, and G4VSolid::GetPointOnSurface().

+ Here is the call graph for this function:

G4Polyhedron * G4ReflectedSolid::GetPolyhedron ( ) const
virtual

Reimplemented from G4VSolid.

Definition at line 438 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 438 of file G4ReflectedSolid.cc

References CreatePolyhedron(), fpPolyhedron, fRebuildPolyhedron, HepPolyhedron::GetNumberOfRotationSteps(), and G4Polyhedron::GetNumberOfRotationStepsAtTimeOfCreation().

+ Here is the call graph for this function:

const G4ReflectedSolid * G4ReflectedSolid::GetReflectedSolidPtr ( ) const
virtual

Definition at line 110 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 110 of file G4ReflectedSolid.cc

G4ReflectedSolid * G4ReflectedSolid::GetReflectedSolidPtr ( )
virtual

Definition at line 115 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 115 of file G4ReflectedSolid.cc

G4Transform3D G4ReflectedSolid::GetTransform3D ( ) const

Definition at line 128 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 128 of file G4ReflectedSolid.cc

References fDirectTransform3D, and HepGeom::Transform3D::inverse().

+ Here is the call graph for this function:

EInside G4ReflectedSolid::Inside ( const G4ThreeVector p) const
virtual

Implements G4VSolid.

Definition at line 257 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 257 of file G4ReflectedSolid.cc

References fPtrSolid, and G4VSolid::Inside().

+ Here is the call graph for this function:

G4ReflectedSolid & G4ReflectedSolid::operator= ( const G4ReflectedSolid rhs)

Definition at line 81 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 81 of file G4ReflectedSolid.cc

References fDirectTransform3D, fpPolyhedron, fPtrSolid, fRebuildPolyhedron, and G4VSolid::operator=().

+ Here is the call graph for this function:

void G4ReflectedSolid::SetDirectTransform3D ( G4Transform3D transform)

Definition at line 139 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 139 of file G4ReflectedSolid.cc

References fDirectTransform3D, fRebuildPolyhedron, and Acts::Test::transform.

std::ostream & G4ReflectedSolid::StreamInfo ( std::ostream &  os) const
virtual

Implements G4VSolid.

Definition at line 376 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 376 of file G4ReflectedSolid.cc

References fDirectTransform3D, fPtrSolid, GetEntityType(), G4VSolid::GetName(), HepGeom::Transform3D::getRotation(), HepGeom::Transform3D::getTranslation(), CLHEP::HepRotation::print(), and G4VSolid::StreamInfo().

+ Here is the call graph for this function:

G4ThreeVector G4ReflectedSolid::SurfaceNormal ( const G4ThreeVector p) const
virtual

Implements G4VSolid.

Definition at line 268 of file G4ReflectedSolid.cc.

View newest version in sPHENIX GitHub at line 268 of file G4ReflectedSolid.cc

References fDirectTransform3D, fPtrSolid, CLHEP::normal(), and G4VSolid::SurfaceNormal().

+ Here is the call graph for this function:

Member Data Documentation

G4Transform3D* G4ReflectedSolid::fDirectTransform3D = nullptr
protected
G4Polyhedron* G4ReflectedSolid::fpPolyhedron = nullptr
mutableprotected

Definition at line 125 of file G4ReflectedSolid.hh.

View newest version in sPHENIX GitHub at line 125 of file G4ReflectedSolid.hh

Referenced by GetPolyhedron(), operator=(), and ~G4ReflectedSolid().

G4VSolid* G4ReflectedSolid::fPtrSolid = nullptr
protected
G4bool G4ReflectedSolid::fRebuildPolyhedron = false
mutableprotected

Definition at line 124 of file G4ReflectedSolid.hh.

View newest version in sPHENIX GitHub at line 124 of file G4ReflectedSolid.hh

Referenced by GetPolyhedron(), operator=(), and SetDirectTransform3D().


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