42#ifndef G4BOUNDINGENVELOPE_HH
43#define G4BOUNDINGENVELOPE_HH
73 const std::vector<const G4ThreeVectorList*>& polygons);
97 void CheckBoundingBox();
100 void CheckBoundingPolygons();
107 std::vector<G4Polygon3D*>& pBases)
const;
117 std::vector<G4Segment3D>& pEdges)
const;
122 std::vector<G4Plane3D>& pPlanes)
const;
125 G4bool ClipEdgesByVoxel(
const std::vector<G4Segment3D>& pEdges,
130 void ClipVoxelByPlanes(
G4int pBits,
132 const std::vector<G4Plane3D>& pPlanes,
142 const std::vector<const G4ThreeVectorList*>* fPolygons =
nullptr;
std::pair< G4Point3D, G4Point3D > G4Segment3D
std::vector< G4Point3D > G4Polygon3D
std::vector< G4ThreeVector > G4ThreeVectorList
G4bool BoundingBoxVsVoxelLimits(const EAxis pAxis, const G4VoxelLimits &pVoxelLimits, const G4Transform3D &pTransform3D, G4double &pMin, G4double &pMax) const
G4bool CalculateExtent(const EAxis pAxis, const G4VoxelLimits &pVoxelLimits, const G4Transform3D &pTransform3D, G4double &pMin, G4double &pMax) const