Geant4
10.02.p02
|
#include <G4ExtrudedSolid.hh>
Classes | |
struct | ZSection |
Private Member Functions | |
void | ComputeProjectionParameters () |
G4ThreeVector | GetVertex (G4int iz, G4int ind) const |
G4TwoVector | ProjectPoint (const G4ThreeVector &point) const |
G4bool | IsSameLine (G4TwoVector p, G4TwoVector l1, G4TwoVector l2) const |
G4bool | IsSameLineSegment (G4TwoVector p, G4TwoVector l1, G4TwoVector l2) const |
G4bool | IsSameSide (G4TwoVector p1, G4TwoVector p2, G4TwoVector l1, G4TwoVector l2) const |
G4bool | IsPointInside (G4TwoVector a, G4TwoVector b, G4TwoVector c, G4TwoVector p) const |
G4double | GetAngle (G4TwoVector p0, G4TwoVector pa, G4TwoVector pb) const |
G4VFacet * | MakeDownFacet (G4int ind1, G4int ind2, G4int ind3) const |
G4VFacet * | MakeUpFacet (G4int ind1, G4int ind2, G4int ind3) const |
G4bool | AddGeneralPolygonFacets () |
G4bool | MakeFacets () |
G4bool | IsConvex () const |
Private Attributes | |
G4int | fNv |
G4int | fNz |
std::vector< G4TwoVector > | fPolygon |
std::vector< ZSection > | fZSections |
std::vector< std::vector< G4int > > | fTriangles |
G4bool | fIsConvex |
G4GeometryType | fGeometryType |
std::vector< G4double > | fKScales |
std::vector< G4double > | fScale0s |
std::vector< G4TwoVector > | fKOffsets |
std::vector< G4TwoVector > | fOffset0s |
Additional Inherited Members | |
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 |
Protected Attributes inherited from G4TessellatedSolid | |
G4double | kCarToleranceHalf |
Protected Attributes inherited from G4VSolid | |
G4double | kCarTolerance |
Definition at line 82 of file G4ExtrudedSolid.hh.
G4ExtrudedSolid::G4ExtrudedSolid | ( | const G4String & | pName, |
std::vector< G4TwoVector > | polygon, | ||
std::vector< ZSection > | zsections | ||
) |
Definition at line 56 of file G4ExtrudedSolid.cc.
References ComputeProjectionParameters(), FatalErrorInArgument, FatalException, fIsConvex, fNv, fNz, fPolygon, fZSections, G4Exception(), IsConvex(), G4TessellatedSolid::kCarToleranceHalf, and MakeFacets().
Referenced by Clone().
G4ExtrudedSolid::G4ExtrudedSolid | ( | const G4String & | pName, |
std::vector< G4TwoVector > | polygon, | ||
G4double | halfZ, | ||
G4TwoVector | off1, | ||
G4double | scale1, | ||
G4TwoVector | off2, | ||
G4double | scale2 | ||
) |
Definition at line 155 of file G4ExtrudedSolid.cc.
References ComputeProjectionParameters(), FatalErrorInArgument, FatalException, fIsConvex, fNv, fPolygon, fZSections, G4Exception(), IsConvex(), and MakeFacets().
|
virtual |
Definition at line 276 of file G4ExtrudedSolid.cc.
G4ExtrudedSolid::G4ExtrudedSolid | ( | __void__ & | a | ) |
Definition at line 230 of file G4ExtrudedSolid.cc.
G4ExtrudedSolid::G4ExtrudedSolid | ( | const G4ExtrudedSolid & | rhs | ) |
Definition at line 240 of file G4ExtrudedSolid.cc.
|
private |
Definition at line 535 of file G4ExtrudedSolid.cc.
References G4TessellatedSolid::AddFacet(), angle, c1, c2, c3, FatalException, fNv, fPolygon, fTriangles, G4Exception(), GetAngle(), G4GeometryTolerance::GetAngularTolerance(), G4GeometryTolerance::GetInstance(), IsPointInside(), MakeDownFacet(), MakeUpFacet(), and pi.
Referenced by MakeFacets().
|
virtual |
Reimplemented from G4TessellatedSolid.
Definition at line 765 of file G4ExtrudedSolid.cc.
References G4ExtrudedSolid().
|
private |
Definition at line 283 of file G4ExtrudedSolid.cc.
References fKOffsets, fKScales, fNz, fOffset0s, fScale0s, fZSections, and iz.
Referenced by G4ExtrudedSolid().
|
virtual |
Reimplemented from G4TessellatedSolid.
Definition at line 845 of file G4ExtrudedSolid.cc.
References G4TessellatedSolid::DistanceToOut(), and fIsConvex.
|
virtual |
Reimplemented from G4TessellatedSolid.
Definition at line 864 of file G4ExtrudedSolid.cc.
References G4TessellatedSolid::DistanceToOut().
|
private |
Definition at line 451 of file G4ExtrudedSolid.cc.
References pi.
Referenced by AddGeneralPolygonFacets().
|
virtual |
Reimplemented from G4TessellatedSolid.
Definition at line 756 of file G4ExtrudedSolid.cc.
References fGeometryType.
|
inline |
|
inline |
|
inline |
|
inline |
Referenced by MakeDownFacet(), MakeFacets(), MakeUpFacet(), and G4GDMLWriteSolids::XtruWrite().
|
private |
Definition at line 317 of file G4ExtrudedSolid.cc.
References fPolygon, fZSections, iz, and x.
|
inline |
|
virtual |
Reimplemented from G4TessellatedSolid.
Definition at line 772 of file G4ExtrudedSolid.cc.
References fNv, fNz, fPolygon, fTriangles, fZSections, G4TessellatedSolid::GetMaxXExtent(), G4TessellatedSolid::GetMaxYExtent(), G4TessellatedSolid::GetMaxZExtent(), G4TessellatedSolid::GetMinXExtent(), G4TessellatedSolid::GetMinYExtent(), G4TessellatedSolid::GetMinZExtent(), IsPointInside(), IsSameLineSegment(), G4TessellatedSolid::kCarToleranceHalf, kInside, kOutside, kSurface, and ProjectPoint().
|
private |
Definition at line 735 of file G4ExtrudedSolid.cc.
References fNv, fPolygon, and pi.
Referenced by G4ExtrudedSolid().
|
private |
Definition at line 422 of file G4ExtrudedSolid.cc.
References IsSameLineSegment(), and IsSameSide().
Referenced by AddGeneralPolygonFacets(), and Inside().
|
private |
Definition at line 361 of file G4ExtrudedSolid.cc.
References G4TessellatedSolid::kCarToleranceHalf.
Referenced by IsSameLineSegment().
|
private |
Definition at line 390 of file G4ExtrudedSolid.cc.
References IsSameLine(), G4TessellatedSolid::kCarToleranceHalf, G4INCL::Math::max(), and G4INCL::Math::min().
Referenced by Inside(), and IsPointInside().
|
private |
Definition at line 409 of file G4ExtrudedSolid.cc.
Referenced by IsPointInside().
Definition at line 468 of file G4ExtrudedSolid.cc.
References ABSOLUTE, and GetVertex().
Referenced by AddGeneralPolygonFacets().
|
private |
Definition at line 659 of file G4ExtrudedSolid.cc.
References ABSOLUTE, G4TessellatedSolid::AddFacet(), AddGeneralPolygonFacets(), fNv, fNz, fTriangles, GetVertex(), iz, and G4TessellatedSolid::SetSolidClosed().
Referenced by G4ExtrudedSolid().
Definition at line 502 of file G4ExtrudedSolid.cc.
References ABSOLUTE, fNz, and GetVertex().
Referenced by AddGeneralPolygonFacets().
G4ExtrudedSolid & G4ExtrudedSolid::operator= | ( | const G4ExtrudedSolid & | rhs | ) |
Definition at line 252 of file G4ExtrudedSolid.cc.
References fGeometryType, fIsConvex, fKOffsets, fKScales, fNv, fNz, fOffset0s, fPolygon, fScale0s, fTriangles, fZSections, and G4TessellatedSolid::operator=().
|
private |
Definition at line 330 of file G4ExtrudedSolid.cc.
References fKOffsets, fKScales, fNz, fOffset0s, fScale0s, fZSections, iz, and G4InuclParticleNames::z0.
Referenced by Inside().
|
virtual |
Reimplemented from G4TessellatedSolid.
Definition at line 873 of file G4ExtrudedSolid.cc.
References fGeometryType, fIsConvex, fNv, fNz, fPolygon, fZSections, G4endl, G4VSolid::GetName(), iz, and mm.
|
private |
Definition at line 181 of file G4ExtrudedSolid.hh.
Referenced by GetEntityType(), operator=(), and StreamInfo().
|
private |
Definition at line 180 of file G4ExtrudedSolid.hh.
Referenced by DistanceToOut(), G4ExtrudedSolid(), operator=(), and StreamInfo().
|
private |
Definition at line 185 of file G4ExtrudedSolid.hh.
Referenced by ComputeProjectionParameters(), operator=(), and ProjectPoint().
|
private |
Definition at line 183 of file G4ExtrudedSolid.hh.
Referenced by ComputeProjectionParameters(), operator=(), and ProjectPoint().
|
private |
Definition at line 175 of file G4ExtrudedSolid.hh.
Referenced by AddGeneralPolygonFacets(), G4ExtrudedSolid(), Inside(), IsConvex(), MakeFacets(), operator=(), and StreamInfo().
|
private |
Definition at line 176 of file G4ExtrudedSolid.hh.
Referenced by ComputeProjectionParameters(), G4ExtrudedSolid(), Inside(), MakeFacets(), MakeUpFacet(), operator=(), ProjectPoint(), and StreamInfo().
|
private |
Definition at line 186 of file G4ExtrudedSolid.hh.
Referenced by ComputeProjectionParameters(), operator=(), and ProjectPoint().
|
private |
Definition at line 177 of file G4ExtrudedSolid.hh.
Referenced by AddGeneralPolygonFacets(), G4ExtrudedSolid(), GetVertex(), Inside(), IsConvex(), operator=(), and StreamInfo().
|
private |
Definition at line 184 of file G4ExtrudedSolid.hh.
Referenced by ComputeProjectionParameters(), operator=(), and ProjectPoint().
|
private |
Definition at line 179 of file G4ExtrudedSolid.hh.
Referenced by AddGeneralPolygonFacets(), Inside(), MakeFacets(), and operator=().
|
private |
Definition at line 178 of file G4ExtrudedSolid.hh.
Referenced by ComputeProjectionParameters(), G4ExtrudedSolid(), GetVertex(), Inside(), operator=(), ProjectPoint(), and StreamInfo().