58 G4VSolid(pName), fAreaRatio(0.), fStatistics(1000000), fCubVolEpsilon(0.001),
59 fAreaAccuracy(-1.), fCubicVolume(0.), fSurfaceArea(0.),
60 fRebuildPolyhedron(false), fpPolyhedron(0), createdDisplacedSolid(false)
147 if (
this == &rhs) {
return *
this; }
183 G4Exception(
"G4BooleanSolid::GetConstituentSolid()",
206 G4Exception(
"G4BooleanSolid::GetConstituentSolid()",
228 os <<
"-----------------------------------------------------------\n" 229 <<
" *** Dump for Boolean solid - " <<
GetName() <<
" ***\n" 230 <<
" ===================================================\n" 232 <<
" Parameters of constituent solids: \n" 233 <<
"===========================================================\n";
236 os <<
"===========================================================\n";
293 if (type ==
"G4UnionSolid")
295 else if (type ==
"G4IntersectionSolid")
297 else if (type ==
"G4SubtractionSolid")
301 std::ostringstream message;
302 message <<
"Solid - " << solid->
GetName()
303 <<
" - Unrecognised composite solid" <<
G4endl 304 <<
" Returning NULL !";
322 processor.
push_back (operation, *operand);
virtual G4Polyhedron * GetPolyhedron() const
G4double GetAreaRatio() const
G4BooleanSolid(const G4String &pName, G4VSolid *pSolidA, G4VSolid *pSolidB)
G4int GetNumberOfRotationStepsAtTimeOfCreation() const
virtual G4GeometryType GetEntityType() const
virtual const G4VSolid * GetConstituentSolid(G4int no) const
virtual G4GeometryType GetEntityType() const =0
#define G4MUTEX_INITIALIZER
virtual G4Polyhedron * GetPolyhedron() const
virtual G4ThreeVector GetPointOnSurface() const
static int operand(pchar begin, pchar end, double &result, pchar &endp, const dic_type &dictionary)
void push_back(Operation, const HepPolyhedron &)
virtual const G4VSolid * GetConstituentSolid(G4int no) const
G4bool createdDisplacedSolid
virtual std::ostream & StreamInfo(std::ostream &os) const =0
virtual EInside Inside(const G4ThreeVector &p) const =0
G4Polyhedron * fpPolyhedron
virtual ~G4BooleanSolid()
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
std::ostream & StreamInfo(std::ostream &os) const
static G4int GetNumberOfRotationSteps()
G4bool fRebuildPolyhedron
G4VSolid & operator=(const G4VSolid &rhs)
G4ThreeVector GetPointOnSurface() const
virtual G4Polyhedron * CreatePolyhedron() const
G4BooleanSolid & operator=(const G4BooleanSolid &rhs)
G4Polyhedron * StackPolyhedron(HepPolyhedronProcessor &, const G4VSolid *) const