44#ifndef G4POLYHEDRASIDE_HH
45#define G4POLYHEDRASIDE_HH
235 using G4PolyhedraSideEdge =
struct sG4PolyhedraSideEdge
248 G4PolyhedraSideEdge* edges[2];
288 const G4PolyhedraSideVec& vec,
332 const G4PolyhedraSideVec& vec,
346 const G4PolyhedraSideVec& vec,
365 G4IntersectingCone* cone =
nullptr;
367 G4PolyhedraSideVec* vecs =
nullptr;
368 G4PolyhedraSideEdge* edges =
nullptr;
G4GeomSplitter< G4PhSideData > G4PhSideManager
CLHEP::Hep3Vector G4ThreeVector
G4GeomSplitter is an utility class for splitting of R/W data for thread-safety from geometry classes....
G4IntersectingCone is a utility class used to calculate the intersection of an arbitrary line with a ...
G4ThreeVector Normal(const G4ThreeVector &p, G4double *bestDistance) override
static const G4PhSideManager & GetSubInstanceManager()
G4PolyhedraSide & operator=(const G4PolyhedraSide &source)
G4PolyhedraSide(const G4PolyhedraSideRZ *prevRZ, const G4PolyhedraSideRZ *tail, const G4PolyhedraSideRZ *head, const G4PolyhedraSideRZ *nextRZ, G4int numSide, G4double phiStart, G4double phiTotal, G4bool phiIsOpen, G4bool isAllBehind=false)
G4int GetInstanceID() const
G4bool Intersect(const G4ThreeVector &p, const G4ThreeVector &v, G4bool outgoing, G4double surfTolerance, G4double &distance, G4double &distFromSurface, G4ThreeVector &normal, G4bool &allBehind) override
G4double SurfaceArea() override
EInside Inside(const G4ThreeVector &p, G4double tolerance, G4double *bestDistance) override
G4double Extent(const G4ThreeVector axis) override
G4double Distance(const G4ThreeVector &p, G4bool outgoing) override
void CalculateExtent(const EAxis axis, const G4VoxelLimits &voxelLimit, const G4AffineTransform &tranform, G4SolidExtentList &extentList) override
~G4PolyhedraSide() override
friend struct sG4PolyhedraSideVec
G4VCSGface * Clone() override
G4SolidExtentList is utility class designed for calculating the extent of a CSG-like solid for a voxe...
virtual G4ThreeVector GetPointOnFace()=0
G4VoxelLimits represents limitation/restrictions of space, where restrictions are only made perpendic...
const axis_t axis_to_type< N >::axis