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/G4Polyhedra.hh>
Protected Attributes | |
G4int | numSide = 0 |
G4double | startPhi |
G4double | endPhi |
G4bool | phiIsOpen = false |
G4bool | genericPgon = false |
G4int | numCorner = 0 |
G4PolyhedraSideRZ * | corners = nullptr |
G4PolyhedraHistorical * | original_parameters = 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 74 of file G4Polyhedra.hh.
View newest version in sPHENIX GitHub at line 74 of file G4Polyhedra.hh
G4Polyhedra::G4Polyhedra | ( | const G4String & | name, |
G4double | phiStart, | ||
G4double | phiTotal, | ||
G4int | numSide, | ||
G4int | numZPlanes, | ||
const G4double | zPlane[], | ||
const G4double | rInner[], | ||
const G4double | rOuter[] | ||
) |
Definition at line 68 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 68 of file G4Polyhedra.cc
References Create(), DBL_EPSILON, G4VSolid::DumpInfo(), FatalErrorInArgument, G4endl, G4Exception(), G4VSolid::GetName(), message(), G4PolyhedraHistorical::Num_z_planes, G4PolyhedraHistorical::numSide, G4PolyhedraHistorical::Opening_angle, original_parameters, G4PolyhedraHistorical::Rmax, G4PolyhedraHistorical::Rmin, G4ReduciblePolygon::ScaleA(), G4PolyhedraHistorical::Start_angle, twopi, and G4PolyhedraHistorical::Z_values.
Referenced by Clone().
G4Polyhedra::G4Polyhedra | ( | const G4String & | name, |
G4double | phiStart, | ||
G4double | phiTotal, | ||
G4int | numSide, | ||
G4int | numRZ, | ||
const G4double | r[], | ||
const G4double | z[] | ||
) |
Definition at line 151 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 151 of file G4Polyhedra.cc
References Create(), FatalErrorInArgument, G4endl, G4Exception(), G4VSolid::GetName(), message(), and SetOriginalParameters().
|
virtual |
Definition at line 368 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 368 of file G4Polyhedra.cc
References corners, enclosingCylinder, and original_parameters.
G4Polyhedra::G4Polyhedra | ( | __void__ & | a | ) |
Definition at line 361 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 361 of file G4Polyhedra.cc
G4Polyhedra::G4Polyhedra | ( | const G4Polyhedra & | source | ) |
Definition at line 377 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 377 of file G4Polyhedra.cc
References CopyStuff().
|
virtual |
Reimplemented from G4VSolid.
Definition at line 531 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 531 of file G4Polyhedra.cc
References G4VSolid::DumpInfo(), G4Exception(), GetCorner(), GetCosStartPhi(), GetEndPhi(), G4VSolid::GetName(), GetNumRZCorner(), GetNumSide(), GetSinStartPhi(), GetStartPhi(), IsOpen(), JustWarning, k, kInfinity, message(), pMax, G4PolyhedraSideRZ::r, rmax(), CLHEP::Hep3Vector::set(), twopi, CLHEP::Hep3Vector::x(), x, xmax, xmin, xx, CLHEP::Hep3Vector::y(), y, ymax, ymin, G4PolyhedraSideRZ::z, and CLHEP::Hep3Vector::z().
Referenced by CalculateExtent().
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 599 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 599 of file G4Polyhedra.cc
References G4BoundingEnvelope::BoundingBoxVsVoxelLimits(), BoundingLimits(), G4BoundingEnvelope::CalculateExtent(), emax, CEMC_TOWER::emin, G4Exception(), GetCorner(), GetCosStartPhi(), GetEndPhi(), G4VoxelLimits::GetMaxExtent(), G4VoxelLimits::GetMinExtent(), G4VSolid::GetName(), GetNumRZCorner(), GetNumSide(), GetSinStartPhi(), GetStartPhi(), IsOpen(), JustWarning, k, G4VSolid::kCarTolerance, kInfinity, message(), pMax, G4GeomTools::PolygonArea(), G4PolyhedraSideRZ::r, G4GeomTools::RemoveRedundantVertices(), reverse, G4GeomTools::TriangulatePolygon(), twopi, x, y, and G4PolyhedraSideRZ::z.
|
virtual |
Reimplemented from G4VSolid.
Definition at line 731 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 731 of file G4Polyhedra.cc
References G4Polyhedra().
|
virtual |
Reimplemented from G4VSolid.
Definition at line 715 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 715 of file G4Polyhedra.cc
References G4VPVParameterisation::ComputeDimensions().
|
protected |
Definition at line 402 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 402 of file G4Polyhedra.cc
References corners, enclosingCylinder, endPhi, G4VCSGfaceted::fpPolyhedron, G4VCSGfaceted::fRebuildPolyhedron, genericPgon, numCorner, numSide, original_parameters, phiIsOpen, and startPhi.
Referenced by G4Polyhedra(), and operator=().
|
protected |
Definition at line 185 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 185 of file G4Polyhedra.cc
References G4ReduciblePolygon::Amin(), G4ReduciblePolygon::Area(), G4ReduciblePolygonIterator::Begin(), corners, G4ReduciblePolygon::CrossesItself(), DBL_EPSILON, enclosingCylinder, endPhi, G4VCSGfaceted::faces, FatalErrorInArgument, G4endl, G4Exception(), G4ReduciblePolygonIterator::GetA(), G4ReduciblePolygonIterator::GetB(), G4VSolid::GetName(), G4VSolid::kCarTolerance, kInfinity, message(), G4ReduciblePolygonIterator::Next(), numCorner, G4VCSGfaceted::numFace, numSide, G4ReduciblePolygon::NumVertices(), phiIsOpen, G4PolyhedraSideRZ::r, G4ReduciblePolygon::RemoveDuplicateVertices(), G4ReduciblePolygon::RemoveRedundantVertices(), G4ReduciblePolygon::ReverseOrder(), startPhi, twopi, and G4PolyhedraSideRZ::z.
Referenced by G4Polyhedra(), and Reset().
|
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 1052 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 1052 of file G4Polyhedra.cc
References a, A(), ab, kdfinder::abs(), b, B(), C(), c, corners, HepPolyhedron::createPolyhedron(), d, endPhi, G4Exception(), genericPgon, G4VSolid::GetName(), JustWarning, G4VSolid::kCarTolerance, message(), G4PolyhedraHistorical::Num_z_planes, numCorner, G4PolyhedraHistorical::numSide, numSide, G4PolyhedraHistorical::Opening_angle, original_parameters, phi, phiIsOpen, G4PolyhedraSideRZ::r, G4PolyhedraHistorical::Rmax, G4PolyhedraHistorical::Rmin, G4PolyhedraHistorical::Start_angle, startPhi, twopi, G4PolyhedraSideRZ::z, and G4PolyhedraHistorical::Z_values.
|
protected |
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 507 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 507 of file G4Polyhedra.cc
References G4VCSGfaceted::DistanceToIn(), enclosingCylinder, kInfinity, and G4EnclosingCylinder::ShouldMiss().
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 524 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 524 of file G4Polyhedra.cc
References G4VCSGfaceted::DistanceToIn().
|
inline |
Referenced by BoundingLimits(), CalculateExtent(), G4tgbGeometryDumper::GetSolidParams(), PHG4GDMLWriteSolids::PolyhedraWrite(), and G4GDMLWriteSolids::PolyhedraWrite().
|
inline |
|
inline |
|
inline |
Referenced by BoundingLimits(), G4tgbVolume::BuildSolidForDivision(), CalculateExtent(), G4VParameterisationPolyhedra::ConvertRadiusFactor(), export_G4Polyhedra(), G4ParameterisationPolyhedraPhi::G4ParameterisationPolyhedraPhi(), G4VParameterisationPolyhedra::G4VParameterisationPolyhedra(), and G4ParameterisationPolyhedraPhi::GetMaxParameter().
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 724 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 724 of file G4Polyhedra.cc
|
inline |
Referenced by BoundingLimits(), CalculateExtent(), export_G4Polyhedra(), G4tgbGeometryDumper::GetSolidParams(), PHG4GDMLWriteSolids::PolyhedraWrite(), and G4GDMLWriteSolids::PolyhedraWrite().
|
inline |
Referenced by BoundingLimits(), G4tgbVolume::BuildSolidForDivision(), CalculateExtent(), export_G4Polyhedra(), G4ParameterisationPolyhedraPhi::G4ParameterisationPolyhedraPhi(), and G4tgbGeometryDumper::GetSolidParams().
|
inline |
Referenced by G4tgbVolume::BuildSolidForDivision(), G4ParameterisationPolyhedraPhi::CheckParametersValidity(), G4ParameterisationPolyhedraRho::ComputeDimensions(), G4GDMLParameterisation::ComputeDimensions(), G4ParameterisationPolyhedraPhi::ComputeDimensions(), G4VParameterisationPolyhedra::ConvertRadiusFactor(), G4ParameterisationPolyhedraRho::G4ParameterisationPolyhedraRho(), G4VParameterisationPolyhedra::G4VParameterisationPolyhedra(), G4ParameterisationPolyhedraRho::GetMaxParameter(), G4tgbGeometryDumper::GetSolidParams(), G4GDMLWriteParamvol::Polyhedra_dimensionsWrite(), PHG4GDMLWriteParamvol::Polyhedra_dimensionsWrite(), PHG4GDMLWriteSolids::PolyhedraWrite(), and G4GDMLWriteSolids::PolyhedraWrite().
|
protected |
Definition at line 791 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 791 of file G4Polyhedra.cc
References CLHEP::normal(), G4INCL::DeJongSpin::shoot(), t, Acts::UnitConstants::u, v, and w.
Referenced by GetPointOnSurface().
|
virtual |
Reimplemented from G4VSolid.
Definition at line 836 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 836 of file G4Polyhedra.cc
References a, b, endPhi, genericPgon, GetPointOnPlane(), G4VCSGfaceted::GetPointOnSurfaceGeneric(), G4PolyhedraHistorical::Num_z_planes, numSide, original_parameters, phiIsOpen, G4PolyhedraHistorical::Rmax, G4PolyhedraHistorical::Rmin, G4INCL::DeJongSpin::shoot(), sqr(), startPhi, twopi, and G4PolyhedraHistorical::Z_values.
|
protected |
|
protected |
Definition at line 821 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 821 of file G4Polyhedra.cc
References G4INCL::DeJongSpin::shoot(), v, and w.
|
inline |
|
inline |
|
inline |
Referenced by BoundingLimits(), G4tgbVolume::BuildSolidForDivision(), CalculateExtent(), G4VParameterisationPolyhedra::ConvertRadiusFactor(), export_G4Polyhedra(), G4ParameterisationPolyhedraPhi::G4ParameterisationPolyhedraPhi(), G4VParameterisationPolyhedra::G4VParameterisationPolyhedra(), G4ParameterisationPolyhedraPhi::GetMaxParameter(), and G4tgbGeometryDumper::GetSolidParams().
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 489 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 489 of file G4Polyhedra.cc
References enclosingCylinder, G4VCSGfaceted::Inside(), kOutside, and G4EnclosingCylinder::MustBeOutside().
|
inline |
Referenced by export_G4Polyhedra(), G4VParameterisationPolyhedra::G4VParameterisationPolyhedra(), PHG4GDMLWriteSolids::PolyhedraWrite(), and G4GDMLWriteSolids::PolyhedraWrite().
|
inline |
Referenced by BoundingLimits(), CalculateExtent(), and export_G4Polyhedra().
G4Polyhedra & G4Polyhedra::operator= | ( | const G4Polyhedra & | source | ) |
Definition at line 385 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 385 of file G4Polyhedra.cc
References CopyStuff(), corners, enclosingCylinder, G4VCSGfaceted::operator=(), and original_parameters.
G4bool G4Polyhedra::Reset | ( | ) |
Definition at line 449 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 449 of file G4Polyhedra.cc
References corners, Create(), G4VCSGfaceted::DeleteStuff(), enclosingCylinder, G4endl, G4Exception(), genericPgon, G4VSolid::GetName(), JustWarning, message(), G4PolyhedraHistorical::Num_z_planes, G4PolyhedraHistorical::numSide, G4PolyhedraHistorical::Opening_angle, original_parameters, G4PolyhedraHistorical::Rmax, G4PolyhedraHistorical::Rmin, G4PolyhedraHistorical::Start_angle, and G4PolyhedraHistorical::Z_values.
Referenced by G4ParameterisationPolyhedraRho::ComputeDimensions(), G4GDMLParameterisation::ComputeDimensions(), G4ParameterisationPolyhedraPhi::ComputeDimensions(), and G4ParameterisationPolyhedraZ::ComputeDimensions().
|
inline |
Referenced by G4ParameterisationPolyhedraRho::ComputeDimensions(), G4GDMLParameterisation::ComputeDimensions(), G4ParameterisationPolyhedraPhi::ComputeDimensions(), G4ParameterisationPolyhedraZ::ComputeDimensions(), and G4Polyhedra().
|
protected |
Definition at line 1310 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 1310 of file G4Polyhedra.cc
References G4ReduciblePolygon::Bmax(), corners, endPhi, G4endl, G4Exception(), G4VSolid::GetName(), JustWarning, G4VSolid::kCarTolerance, message(), G4PolyhedraHistorical::Num_z_planes, numCorner, G4PolyhedraHistorical::numSide, numSide, G4PolyhedraHistorical::Opening_angle, original_parameters, r, G4PolyhedraSideRZ::r, G4PolyhedraHistorical::Rmax, G4PolyhedraHistorical::Rmin, G4PolyhedraHistorical::Start_angle, startPhi, G4ReduciblePolygon::StartWithZMin(), Z, G4PolyhedraSideRZ::z, z, G4PolyhedraHistorical::Z_values, and Zmax.
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 738 of file G4Polyhedra.cc.
View newest version in sPHENIX GitHub at line 738 of file G4Polyhedra.cc
References corners, degree, endPhi, genericPgon, G4VSolid::GetName(), G4PolyhedraHistorical::Num_z_planes, numCorner, numSide, original_parameters, G4PolyhedraSideRZ::r, G4PolyhedraHistorical::Rmax, G4PolyhedraHistorical::Rmin, startPhi, G4PolyhedraSideRZ::z, and G4PolyhedraHistorical::Z_values.
|
protected |
Definition at line 189 of file G4Polyhedra.hh.
View newest version in sPHENIX GitHub at line 189 of file G4Polyhedra.hh
Referenced by CopyStuff(), Create(), CreatePolyhedron(), operator=(), Reset(), SetOriginalParameters(), StreamInfo(), and ~G4Polyhedra().
|
protected |
Definition at line 192 of file G4Polyhedra.hh.
View newest version in sPHENIX GitHub at line 192 of file G4Polyhedra.hh
Referenced by CopyStuff(), Create(), DistanceToIn(), Inside(), operator=(), Reset(), and ~G4Polyhedra().
|
protected |
Definition at line 185 of file G4Polyhedra.hh.
View newest version in sPHENIX GitHub at line 185 of file G4Polyhedra.hh
Referenced by CopyStuff(), Create(), CreatePolyhedron(), GetPointOnSurface(), SetOriginalParameters(), and StreamInfo().
Definition at line 187 of file G4Polyhedra.hh.
View newest version in sPHENIX GitHub at line 187 of file G4Polyhedra.hh
Referenced by CopyStuff(), CreatePolyhedron(), GetPointOnSurface(), Reset(), and StreamInfo().
|
protected |
Definition at line 188 of file G4Polyhedra.hh.
View newest version in sPHENIX GitHub at line 188 of file G4Polyhedra.hh
Referenced by CopyStuff(), Create(), CreatePolyhedron(), SetOriginalParameters(), and StreamInfo().
|
protected |
Definition at line 183 of file G4Polyhedra.hh.
View newest version in sPHENIX GitHub at line 183 of file G4Polyhedra.hh
Referenced by CopyStuff(), Create(), CreatePolyhedron(), GetPointOnSurface(), SetOriginalParameters(), and StreamInfo().
|
protected |
Definition at line 190 of file G4Polyhedra.hh.
View newest version in sPHENIX GitHub at line 190 of file G4Polyhedra.hh
Referenced by CopyStuff(), CreatePolyhedron(), G4Polyhedra(), GetPointOnSurface(), operator=(), Reset(), SetOriginalParameters(), StreamInfo(), and ~G4Polyhedra().
Definition at line 186 of file G4Polyhedra.hh.
View newest version in sPHENIX GitHub at line 186 of file G4Polyhedra.hh
Referenced by CopyStuff(), Create(), CreatePolyhedron(), and GetPointOnSurface().
|
protected |
Definition at line 184 of file G4Polyhedra.hh.
View newest version in sPHENIX GitHub at line 184 of file G4Polyhedra.hh
Referenced by CopyStuff(), Create(), CreatePolyhedron(), GetPointOnSurface(), SetOriginalParameters(), and StreamInfo().