ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
#include <geant4/tree/geant4-10.6-release/source/geometry/solids/specific/include/G4GenericPolycone.hh>
Protected Member Functions | |
void | Create (G4double phiStart, G4double phiTotal, G4ReduciblePolygon *rz) |
void | CopyStuff (const G4GenericPolycone &source) |
Protected Member Functions inherited from G4VCSGfaceted | |
virtual G4double | DistanceTo (const G4ThreeVector &p, const G4bool outgoing) const |
G4ThreeVector | GetPointOnSurfaceGeneric () const |
void | CopyStuff (const G4VCSGfaceted &source) |
void | DeleteStuff () |
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 |
Protected Attributes | |
G4double | startPhi |
G4double | endPhi |
G4bool | phiIsOpen = false |
G4int | numCorner |
G4PolyconeSideRZ * | corners = nullptr |
G4EnclosingCylinder * | enclosingCylinder = nullptr |
Protected Attributes inherited from G4VCSGfaceted | |
G4int | numFace = 0 |
G4VCSGface ** | faces = nullptr |
G4double | fCubicVolume = 0.0 |
G4double | fSurfaceArea = 0.0 |
G4bool | fRebuildPolyhedron = false |
G4Polyhedron * | fpPolyhedron = nullptr |
Protected Attributes inherited from G4VSolid | |
G4double | kCarTolerance |
Definition at line 65 of file G4GenericPolycone.hh.
View newest version in sPHENIX GitHub at line 65 of file G4GenericPolycone.hh
G4GenericPolycone::G4GenericPolycone | ( | const G4String & | name, |
G4double | phiStart, | ||
G4double | phiTotal, | ||
G4int | numRZ, | ||
const G4double | r[], | ||
const G4double | z[] | ||
) |
Definition at line 54 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 54 of file G4GenericPolycone.cc
References Create().
Referenced by Clone().
|
virtual |
Definition at line 254 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 254 of file G4GenericPolycone.cc
References corners, and enclosingCylinder.
G4GenericPolycone::G4GenericPolycone | ( | __void__ & | a | ) |
Definition at line 247 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 247 of file G4GenericPolycone.cc
G4GenericPolycone::G4GenericPolycone | ( | const G4GenericPolycone & | source | ) |
Definition at line 262 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 262 of file G4GenericPolycone.cc
References CopyStuff().
|
virtual |
Reimplemented from G4VSolid.
Definition at line 382 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 382 of file G4GenericPolycone.cc
References G4GeomTools::DiskExtent(), G4VSolid::DumpInfo(), G4Exception(), GetCorner(), GetCosEndPhi(), GetCosStartPhi(), G4VSolid::GetName(), GetNumRZCorner(), GetSinEndPhi(), GetSinStartPhi(), IsOpen(), JustWarning, kInfinity, message(), pMax, G4PolyconeSideRZ::r, rmax(), CLHEP::Hep3Vector::set(), CLHEP::Hep2Vector::x(), CLHEP::Hep3Vector::x(), CLHEP::Hep2Vector::y(), CLHEP::Hep3Vector::y(), G4PolyconeSideRZ::z, and CLHEP::Hep3Vector::z().
Referenced by CalculateExtent().
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 433 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 433 of file G4GenericPolycone.cc
References G4BoundingEnvelope::BoundingBoxVsVoxelLimits(), BoundingLimits(), G4BoundingEnvelope::CalculateExtent(), deg, e1, emax, CEMC_TOWER::emin, G4Exception(), GetCorner(), GetCosEndPhi(), GetCosStartPhi(), GetEndPhi(), G4VoxelLimits::GetMaxExtent(), G4VoxelLimits::GetMinExtent(), G4VSolid::GetName(), GetNumRZCorner(), GetSinEndPhi(), GetSinStartPhi(), GetStartPhi(), IsOpen(), JustWarning, k, k2, kInfinity, message(), pMax, G4GeomTools::PolygonArea(), G4PolyconeSideRZ::r, r1, reverse, G4GeomTools::TriangulatePolygon(), twopi, G4PolyconeSideRZ::z, and G4InuclParticleNames::z0.
|
virtual |
Reimplemented from G4VSolid.
Definition at line 578 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 578 of file G4GenericPolycone.cc
References G4GenericPolycone().
|
protected |
Definition at line 289 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 289 of file G4GenericPolycone.cc
References corners, enclosingCylinder, endPhi, G4VCSGfaceted::fpPolyhedron, G4VCSGfaceted::fRebuildPolyhedron, numCorner, phiIsOpen, and startPhi.
Referenced by G4GenericPolycone(), and operator=().
|
protected |
Definition at line 79 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 79 of file G4GenericPolycone.cc
References G4ReduciblePolygon::Amin(), G4ReduciblePolygon::Area(), G4ReduciblePolygonIterator::Begin(), G4ReduciblePolygon::BisectedBy(), corners, G4ReduciblePolygon::CrossesItself(), E, enclosingCylinder, endPhi, G4VCSGfaceted::faces, FatalErrorInArgument, G4endl, G4Exception(), G4ReduciblePolygonIterator::GetA(), G4ReduciblePolygonIterator::GetB(), G4VSolid::GetName(), G4VSolid::kCarTolerance, kInfinity, message(), G4ReduciblePolygonIterator::Next(), numCorner, G4VCSGfaceted::numFace, G4ReduciblePolygon::NumVertices(), phiIsOpen, G4PolyconeSideRZ::r, G4ReduciblePolygon::RemoveDuplicateVertices(), G4ReduciblePolygon::RemoveRedundantVertices(), G4ReduciblePolygon::ReverseOrder(), startPhi, twopi, and G4PolyconeSideRZ::z.
Referenced by G4GenericPolycone().
|
virtual |
Creates user defined polyhedron. This function allows to the user to define arbitrary polyhedron. The faces of the polyhedron should be either triangles or planar quadrilateral. Nodes of a face are defined by indexes pointing to the elements in the xyz array. Numeration of the elements in the array starts from 1 (like in fortran). The indexes can be positive or negative. Negative sign means that the corresponding edge is invisible. The normal of the face should be directed to exterior of the polyhedron.
Nnodes | number of nodes |
Nfaces | number of faces |
xyz | nodes |
faces_vec | faces (quadrilaterals or triangles) |
Implements G4VCSGfaceted.
Definition at line 622 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 622 of file G4GenericPolycone.cc
References a, A(), ab, kdfinder::abs(), b, B(), C(), c, corners, HepPolyhedron::createPolyhedron(), d, endPhi, G4Exception(), G4VSolid::GetName(), HepPolyhedron::GetNumberOfRotationSteps(), JustWarning, G4VSolid::kCarTolerance, message(), numCorner, numSide(), phi, phiIsOpen, G4PolyconeSideRZ::r, startPhi, twopi, and G4PolyconeSideRZ::z.
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 355 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 355 of file G4GenericPolycone.cc
References G4VCSGfaceted::DistanceToIn(), enclosingCylinder, kInfinity, and G4EnclosingCylinder::ShouldMiss().
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 372 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 372 of file G4GenericPolycone.cc
References G4VCSGfaceted::DistanceToIn().
|
inline |
Referenced by BoundingLimits(), G4tgbVolume::BuildSolidForDivision(), CalculateExtent(), PHG4GDMLWriteSolids::GenericPolyconeWrite(), G4GDMLWriteSolids::GenericPolyconeWrite(), and G4tgbGeometryDumper::GetSolidParams().
|
inline |
|
inline |
|
inline |
Referenced by G4tgbVolume::BuildSolidForDivision(), CalculateExtent(), PHG4GDMLWriteSolids::GenericPolyconeWrite(), G4GDMLWriteSolids::GenericPolyconeWrite(), and G4tgbGeometryDumper::GetSolidParams().
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 569 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 569 of file G4GenericPolycone.cc
|
inline |
Referenced by BoundingLimits(), G4tgbVolume::BuildSolidForDivision(), CalculateExtent(), PHG4GDMLWriteSolids::GenericPolyconeWrite(), G4GDMLWriteSolids::GenericPolyconeWrite(), and G4tgbGeometryDumper::GetSolidParams().
|
virtual |
Reimplemented from G4VSolid.
Definition at line 614 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 614 of file G4GenericPolycone.cc
References G4VCSGfaceted::GetPointOnSurfaceGeneric().
|
inline |
|
inline |
|
inline |
Referenced by G4tgbVolume::BuildSolidForDivision(), CalculateExtent(), PHG4GDMLWriteSolids::GenericPolyconeWrite(), G4GDMLWriteSolids::GenericPolyconeWrite(), and G4tgbGeometryDumper::GetSolidParams().
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 337 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 337 of file G4GenericPolycone.cc
References enclosingCylinder, G4VCSGfaceted::Inside(), kOutside, and G4EnclosingCylinder::MustBeOutside().
|
inline |
G4GenericPolycone & G4GenericPolycone::operator= | ( | const G4GenericPolycone & | source | ) |
Definition at line 271 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 271 of file G4GenericPolycone.cc
References CopyStuff(), corners, enclosingCylinder, and G4VCSGfaceted::operator=().
G4bool G4GenericPolycone::Reset | ( | ) |
Definition at line 322 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 322 of file G4GenericPolycone.cc
References G4endl, G4Exception(), G4VSolid::GetName(), JustWarning, and message().
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 587 of file G4GenericPolycone.cc.
View newest version in sPHENIX GitHub at line 587 of file G4GenericPolycone.cc
References corners, degree, endPhi, G4VSolid::GetName(), numCorner, G4PolyconeSideRZ::r, startPhi, and G4PolyconeSideRZ::z.
|
protected |
Definition at line 146 of file G4GenericPolycone.hh.
View newest version in sPHENIX GitHub at line 146 of file G4GenericPolycone.hh
Referenced by CopyStuff(), Create(), CreatePolyhedron(), operator=(), StreamInfo(), and ~G4GenericPolycone().
|
protected |
Definition at line 150 of file G4GenericPolycone.hh.
View newest version in sPHENIX GitHub at line 150 of file G4GenericPolycone.hh
Referenced by CopyStuff(), Create(), DistanceToIn(), Inside(), operator=(), and ~G4GenericPolycone().
|
protected |
Definition at line 143 of file G4GenericPolycone.hh.
View newest version in sPHENIX GitHub at line 143 of file G4GenericPolycone.hh
Referenced by CopyStuff(), Create(), CreatePolyhedron(), and StreamInfo().
|
protected |
Definition at line 145 of file G4GenericPolycone.hh.
View newest version in sPHENIX GitHub at line 145 of file G4GenericPolycone.hh
Referenced by CopyStuff(), Create(), CreatePolyhedron(), and StreamInfo().
Definition at line 144 of file G4GenericPolycone.hh.
View newest version in sPHENIX GitHub at line 144 of file G4GenericPolycone.hh
Referenced by CopyStuff(), Create(), and CreatePolyhedron().
|
protected |
Definition at line 142 of file G4GenericPolycone.hh.
View newest version in sPHENIX GitHub at line 142 of file G4GenericPolycone.hh
Referenced by CopyStuff(), Create(), CreatePolyhedron(), and StreamInfo().