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
 
G4VSolid * Clone () const
 
virtual G4GeometryType GetEntityType () const
 
virtual const G4ReflectedSolid * GetReflectedSolidPtr () const
 
virtual G4ReflectedSolid * GetReflectedSolidPtr ()
 
G4VSolid * GetConstituentMovedSolid () const
 
G4Transform3D GetTransform3D () const
 
G4Transform3D GetDirectTransform3D () const
 
void SetDirectTransform3D (G4Transform3D &)
 
std::ostream & StreamInfo (std::ostream &os) const
 
 G4ReflectedSolid (const G4ReflectedSolid &rhs)
 
G4ReflectedSolid & operator= (const G4ReflectedSolid &rhs)
 
void DescribeYourselfTo (G4VGraphicsScene &scene) const
 
G4Polyhedron * CreatePolyhedron () const
 
G4Polyhedron * GetPolyhedron () 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 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)
 
G4double EstimateCubicVolume (G4int nStat, G4double epsilon) const
 
G4double EstimateSurfaceArea (G4int nStat, G4double ell) const
 

Protected Attributes

G4VSolid * fPtrSolid = nullptr
 
G4Transform3D * fDirectTransform3D = nullptr
 
G4bool fRebuildPolyhedron = false
 
G4Polyhedron * fpPolyhedron = 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: