67 #ifndef G4GenericTrap_HH 
   68 #define G4GenericTrap_HH 
   84                     const std::vector<G4TwoVector>& vertices );
 
   95     inline const std::vector<G4TwoVector>& 
GetVertices() 
const;
 
  110                            const G4bool calcNorm = 
false,
 
  123     std::ostream& 
StreamInfo(std::ostream& os) 
const;
 
  177                            const std::vector<G4TwoVector>& poly) 
const;
 
  183                                 const G4int ipl) 
const;
 
static const G4int fgkNofVertices
 
G4Polyhedron * GetPolyhedron() const 
 
G4int GetVisSubdivisions() const 
 
void SetTwistAngle(G4int index, G4double twist)
 
G4bool IsSegCrossingZ(const G4TwoVector &a, const G4TwoVector &b, const G4TwoVector &c, const G4TwoVector &d) const 
 
G4GenericTrap(const G4String &name, G4double halfZ, const std::vector< G4TwoVector > &vertices)
 
CLHEP::Hep3Vector G4ThreeVector
 
G4VisExtent GetExtent() const 
 
G4TessellatedSolid * CreateTessellatedSolid() const 
 
G4Polyhedron * fpPolyhedron
 
G4double DistToPlane(const G4ThreeVector &p, const G4ThreeVector &v, const G4int ipl) const 
 
G4VFacet * MakeSideFacet(const G4ThreeVector &downVertex0, const G4ThreeVector &downVertex1, const G4ThreeVector &upVertex1, const G4ThreeVector &upVertex0) const 
 
G4double GetFaceSurfaceArea(const G4ThreeVector &p0, const G4ThreeVector &p1, const G4ThreeVector &p2, const G4ThreeVector &p3) const 
 
G4ThreeVector NormalToPlane(const G4ThreeVector &p, const G4int ipl) const 
 
G4bool CalculateExtent(const EAxis pAxis, const G4VoxelLimits &pVoxelLimit, const G4AffineTransform &pTransform, G4double &pmin, G4double &pmax) const 
 
G4GeometryType GetEntityType() const 
 
G4TwoVector GetVertex(G4int index) const 
 
G4double GetZHalfLength() const 
 
G4VFacet * MakeUpFacet(const std::vector< G4ThreeVector > &fromVertices, G4int ind1, G4int ind2, G4int ind3) const 
 
G4bool ComputeIsTwisted()
 
G4double SafetyToFace(const G4ThreeVector &p, const G4int iseg) const 
 
G4ThreeVector SurfaceNormal(const G4ThreeVector &p) const 
 
G4double GetSurfaceArea()
 
G4ThreeVector GetMaximumBBox() const 
 
G4TessellatedSolid * fTessellatedSolid
 
G4ThreeVector GetPointOnSurface() const 
 
G4VFacet * MakeDownFacet(const std::vector< G4ThreeVector > &fromVertices, G4int ind1, G4int ind2, G4int ind3) const 
 
G4GenericTrap & operator=(const G4GenericTrap &rhs)
 
std::ostream & StreamInfo(std::ostream &os) const 
 
G4double GetTwistAngle(G4int index) const 
 
G4double DistToTriangle(const G4ThreeVector &p, const G4ThreeVector &v, const G4int ipl) const 
 
std::vector< G4ThreeVector > G4ThreeVectorList
 
G4double DistanceToOut(const G4ThreeVector &p, const G4ThreeVector &v, const G4bool calcNorm=false, G4bool *validNorm=0, G4ThreeVector *n=0) const 
 
G4double GetCubicVolume()
 
std::vector< G4TwoVector > fVertices
 
EInside Inside(const G4ThreeVector &p) const 
 
G4ThreeVectorList * CreateRotatedVertices(const G4AffineTransform &pTransform) const 
 
G4ThreeVector GetMinimumBBox() const 
 
G4Polyhedron * CreatePolyhedron() const 
 
G4int GetNofVertices() const 
 
void ReorderVertices(std::vector< G4ThreeVector > &vertices) const 
 
EInside InsidePolygone(const G4ThreeVector &p, const std::vector< G4TwoVector > &poly) const 
 
CLHEP::Hep2Vector G4TwoVector
 
G4double halfCarTolerance
 
G4bool IsSegCrossing(const G4TwoVector &a, const G4TwoVector &b, const G4TwoVector &c, const G4TwoVector &d) const 
 
G4double DistanceToIn(const G4ThreeVector &p, const G4ThreeVector &v) const 
 
G4bool CheckOrder(const std::vector< G4TwoVector > &vertices) const 
 
void SetVisSubdivisions(G4int subdiv)
 
const std::vector< G4TwoVector > & GetVertices() const 
 
G4bool fRebuildPolyhedron
 
G4ThreeVector fMinBBoxVector
 
static const G4double fgkTolerance
 
G4ThreeVector fMaxBBoxVector
 
void DescribeYourselfTo(G4VGraphicsScene &scene) const