Geant4
10.01.p02
|
#include <G4GenericPolycone.hh>
Protected Member Functions | |
void | Create (G4double phiStart, G4double phiTotal, G4ReduciblePolygon *rz) |
void | CopyStuff (const G4GenericPolycone &source) |
Protected Member Functions inherited from G4VCSGfaceted | |
virtual G4double | DistanceTo (const G4ThreeVector &p, const G4bool outgoing) const |
G4ThreeVector | GetPointOnSurfaceGeneric () const |
void | CopyStuff (const G4VCSGfaceted &source) |
void | DeleteStuff () |
Protected Member Functions inherited from G4VSolid | |
void | CalculateClippedPolygonExtent (G4ThreeVectorList &pPolygon, const G4VoxelLimits &pVoxelLimit, const EAxis pAxis, G4double &pMin, G4double &pMax) const |
void | ClipCrossSection (G4ThreeVectorList *pVertices, const G4int pSectionIndex, const G4VoxelLimits &pVoxelLimit, const EAxis pAxis, G4double &pMin, G4double &pMax) const |
void | ClipBetweenSections (G4ThreeVectorList *pVertices, const G4int pSectionIndex, const G4VoxelLimits &pVoxelLimit, const EAxis pAxis, G4double &pMin, G4double &pMax) const |
void | ClipPolygon (G4ThreeVectorList &pPolygon, const G4VoxelLimits &pVoxelLimit, const EAxis pAxis) const |
G4double | EstimateCubicVolume (G4int nStat, G4double epsilon) const |
G4double | EstimateSurfaceArea (G4int nStat, G4double ell) const |
Protected Attributes | |
G4double | startPhi |
G4double | endPhi |
G4bool | phiIsOpen |
G4int | numCorner |
G4PolyconeSideRZ * | corners |
G4EnclosingCylinder * | enclosingCylinder |
Protected Attributes inherited from G4VCSGfaceted | |
G4int | numFace |
G4VCSGface ** | faces |
G4double | fCubicVolume |
G4double | fSurfaceArea |
G4bool | fRebuildPolyhedron |
G4Polyhedron * | fpPolyhedron |
Protected Attributes inherited from G4VSolid | |
G4double | kCarTolerance |
Definition at line 70 of file G4GenericPolycone.hh.
G4GenericPolycone::G4GenericPolycone | ( | const G4String & | name, |
G4double | phiStart, | ||
G4double | phiTotal, | ||
G4int | numRZ, | ||
const G4double | r[], | ||
const G4double | z[] | ||
) |
Definition at line 59 of file G4GenericPolycone.cc.
References Create().
Referenced by Clone().
|
virtual |
Definition at line 262 of file G4GenericPolycone.cc.
References corners, and enclosingCylinder.
G4GenericPolycone::G4GenericPolycone | ( | __void__ & | a | ) |
Definition at line 252 of file G4GenericPolycone.cc.
G4GenericPolycone::G4GenericPolycone | ( | const G4GenericPolycone & | source | ) |
Definition at line 272 of file G4GenericPolycone.cc.
References CopyStuff().
|
virtual |
Reimplemented from G4VSolid.
Definition at line 423 of file G4GenericPolycone.cc.
References G4GenericPolycone().
|
protected |
Definition at line 302 of file G4GenericPolycone.cc.
References corners, enclosingCylinder, endPhi, G4VCSGfaceted::fpPolyhedron, G4VCSGfaceted::fRebuildPolyhedron, numCorner, phiIsOpen, and startPhi.
Referenced by G4GenericPolycone(), and operator=().
|
protected |
Definition at line 85 of file G4GenericPolycone.cc.
References G4ReduciblePolygon::Amin(), G4ReduciblePolygon::Area(), G4ReduciblePolygonIterator::Begin(), G4ReduciblePolygon::BisectedBy(), corners, G4ReduciblePolygon::CrossesItself(), enclosingCylinder, endPhi, G4VCSGfaceted::faces, FatalErrorInArgument, G4endl, G4Exception(), G4ReduciblePolygonIterator::GetA(), G4ReduciblePolygonIterator::GetB(), G4VSolid::GetName(), G4VSolid::kCarTolerance, kInfinity, G4ReduciblePolygonIterator::Next(), numCorner, G4VCSGfaceted::numFace, G4ReduciblePolygon::NumVertices(), phiIsOpen, G4PolyconeSideRZ::r, G4ReduciblePolygon::RemoveDuplicateVertices(), G4ReduciblePolygon::RemoveRedundantVertices(), G4ReduciblePolygon::ReverseOrder(), startPhi, and G4PolyconeSideRZ::z.
Referenced by G4GenericPolycone().
|
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 470 of file G4GenericPolycone.cc.
References a, A, ab, corners, endPhi, G4Exception(), G4VSolid::GetName(), JustWarning, G4VSolid::kCarTolerance, numCorner, phiIsOpen, G4PolyconeSideRZ::r, startPhi, and G4PolyconeSideRZ::z.
Referenced by G4ArrowModel::G4ArrowModel().
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 376 of file G4GenericPolycone.cc.
References G4VCSGfaceted::DistanceToIn(), enclosingCylinder, kInfinity, and G4EnclosingCylinder::ShouldMiss().
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 395 of file G4GenericPolycone.cc.
References G4VCSGfaceted::DistanceToIn().
|
inline |
Referenced by G4tgbVolume::BuildSolidForDivision(), G4GDMLWriteSolids::GenericPolyconeWrite(), and G4tgbGeometryDumper::GetSolidParams().
|
inline |
Referenced by G4tgbVolume::BuildSolidForDivision(), G4GDMLWriteSolids::GenericPolyconeWrite(), and G4tgbGeometryDumper::GetSolidParams().
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 414 of file G4GenericPolycone.cc.
|
inline |
Referenced by G4tgbVolume::BuildSolidForDivision(), G4GDMLWriteSolids::GenericPolyconeWrite(), and G4tgbGeometryDumper::GetSolidParams().
|
virtual |
Reimplemented from G4VSolid.
Definition at line 461 of file G4GenericPolycone.cc.
References G4VCSGfaceted::GetPointOnSurfaceGeneric().
|
inline |
Referenced by G4tgbVolume::BuildSolidForDivision(), G4GDMLWriteSolids::GenericPolyconeWrite(), and G4tgbGeometryDumper::GetSolidParams().
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 356 of file G4GenericPolycone.cc.
References enclosingCylinder, G4VCSGfaceted::Inside(), kOutside, and G4EnclosingCylinder::MustBeOutside().
|
inline |
G4GenericPolycone & G4GenericPolycone::operator= | ( | const G4GenericPolycone & | source | ) |
Definition at line 282 of file G4GenericPolycone.cc.
References CopyStuff(), corners, enclosingCylinder, and G4VCSGfaceted::operator=().
G4bool G4GenericPolycone::Reset | ( | ) |
Definition at line 337 of file G4GenericPolycone.cc.
References G4endl, G4Exception(), G4VSolid::GetName(), and JustWarning.
|
virtual |
Reimplemented from G4VCSGfaceted.
Definition at line 431 of file G4GenericPolycone.cc.
References corners, degree, endPhi, G4VSolid::GetName(), numCorner, G4PolyconeSideRZ::r, startPhi, and G4PolyconeSideRZ::z.
|
protected |
Definition at line 143 of file G4GenericPolycone.hh.
Referenced by CopyStuff(), Create(), CreatePolyhedron(), operator=(), StreamInfo(), and ~G4GenericPolycone().
|
protected |
Definition at line 147 of file G4GenericPolycone.hh.
Referenced by CopyStuff(), Create(), DistanceToIn(), Inside(), operator=(), and ~G4GenericPolycone().
|
protected |
Definition at line 140 of file G4GenericPolycone.hh.
Referenced by CopyStuff(), Create(), CreatePolyhedron(), and StreamInfo().
|
protected |
Definition at line 142 of file G4GenericPolycone.hh.
Referenced by CopyStuff(), Create(), CreatePolyhedron(), and StreamInfo().
|
protected |
Definition at line 141 of file G4GenericPolycone.hh.
Referenced by CopyStuff(), Create(), and CreatePolyhedron().
|
protected |
Definition at line 139 of file G4GenericPolycone.hh.
Referenced by CopyStuff(), Create(), CreatePolyhedron(), and StreamInfo().