43 #ifndef G4ClippablePolygon_hh 
   44 #define G4ClippablePolygon_hh 
   57   typedef std::vector<G4ThreeVector> G4ThreeVectorList;
 
   74                               const EAxis IgnoreMe );
 
  113                            G4ThreeVectorList& outputPolygon,
 
  126 #include "G4ClippablePolygon.icc" 
virtual G4bool InFrontOf(const G4ClippablePolygon &other, EAxis axis) const 
 
virtual void ClipAlongOneAxis(const G4VoxelLimits &voxelLimit, const EAxis axis)
 
virtual G4bool GetPlanerExtent(const G4ThreeVector &pointOnPlane, const G4ThreeVector &planeNormal, G4double &min, G4double &max) const 
 
void SetNormal(const G4ThreeVector &newNormal)
 
virtual G4bool PartialClip(const G4VoxelLimits &voxelLimit, const EAxis IgnoreMe)
 
virtual void AddVertexInOrder(const G4ThreeVector vertex)
 
virtual void ClearAllVertices()
 
virtual const G4ThreeVector * GetMinPoint(const EAxis axis) const 
 
virtual G4bool BehindOf(const G4ClippablePolygon &other, EAxis axis) const 
 
const G4ThreeVector GetNormal() const 
 
virtual G4bool GetExtent(const EAxis axis, G4double &min, G4double &max) const 
 
G4int GetNumVertices() const 
 
virtual const G4ThreeVector * GetMaxPoint(const EAxis axis) const 
 
virtual G4bool Clip(const G4VoxelLimits &voxelLimit)
 
G4ThreeVectorList vertices
 
T max(const T t1, const T t2)
brief Return the largest of the two arguments 
 
T min(const T t1, const T t2)
brief Return the smallest of the two arguments 
 
void ClipToSimpleLimits(G4ThreeVectorList &pPolygon, G4ThreeVectorList &outputPolygon, const G4VoxelLimits &pVoxelLimit)
 
virtual ~G4ClippablePolygon()