35#ifndef G4SCALEDSOLID_HH
36#define G4SCALEDSOLID_HH
73 const G4bool calcNorm =
false,
74 G4bool* validNorm =
nullptr,
98 std::ostream&
StreamInfo(std::ostream& os)
const;
120 mutable G4bool fRebuildPolyhedron =
false;
G4VSolid * GetUnscaledSolid() const
G4bool CalculateExtent(const EAxis pAxis, const G4VoxelLimits &pVoxelLimit, const G4AffineTransform &pTransform, G4double &pMin, G4double &pMax) const
G4double GetCubicVolume()
G4ScaledSolid & operator=(const G4ScaledSolid &rhs)
G4double GetSurfaceArea()
G4Scale3D GetScaleTransform() const
std::ostream & StreamInfo(std::ostream &os) const
G4ThreeVector GetPointOnSurface() const
EInside Inside(const G4ThreeVector &p) const
G4ThreeVector SurfaceNormal(const G4ThreeVector &p) const
G4double DistanceToIn(const G4ThreeVector &p, const G4ThreeVector &v) const
void SetScaleTransform(const G4Scale3D &scale)
G4Polyhedron * CreatePolyhedron() const
G4GeometryType GetEntityType() const
G4double DistanceToOut(const G4ThreeVector &p, const G4ThreeVector &v, const G4bool calcNorm=false, G4bool *validNorm=nullptr, G4ThreeVector *n=nullptr) const
void ComputeDimensions(G4VPVParameterisation *p, const G4int n, const G4VPhysicalVolume *pRep)
void BoundingLimits(G4ThreeVector &pMin, G4ThreeVector &pMax) const
G4Polyhedron * GetPolyhedron() const
void CleanTransformations()
void DescribeYourselfTo(G4VGraphicsScene &scene) const