#include <G4ClippablePolygon.hh>
Definition at line 55 of file G4ClippablePolygon.hh.
G4ClippablePolygon::G4ClippablePolygon |
( |
| ) |
|
Definition at line 48 of file G4ClippablePolygon.cc.
G4double GetSurfaceTolerance() const
static G4GeometryTolerance * GetInstance()
G4ClippablePolygon::~G4ClippablePolygon |
( |
| ) |
|
|
virtual |
Definition at line 296 of file G4ClippablePolygon.cc.
303 if (noLeft==0)
return false;
305 if (other.
Empty())
return true;
311 const G4double maxOther = maxPointOther->operator()(axis);
336 if (std::fabs(normalOther(axis)) > std::fabs(
normal(axis)))
virtual G4bool GetPlanerExtent(const G4ThreeVector &pointOnPlane, const G4ThreeVector &planeNormal, G4double &min, G4double &max) const
const G4ThreeVector GetNormal() const
virtual const G4ThreeVector * GetMaxPoint(const EAxis axis) const
G4ThreeVectorList vertices
T max(const T t1, const T t2)
brief Return the largest of the two arguments
void G4ClippablePolygon::ClearAllVertices |
( |
| ) |
|
|
virtual |
Definition at line 84 of file G4ClippablePolygon.cc.
virtual void ClipAlongOneAxis(const G4VoxelLimits &voxelLimit, const EAxis axis)
G4ThreeVectorList vertices
Definition at line 401 of file G4ClippablePolygon.cc.
420 if (tempPolygon.size() == 0)
static const G4double kInfinity
void AddLimit(const EAxis pAxis, const G4double pMin, const G4double pMax)
G4ThreeVectorList vertices
std::vector< G4ThreeVector > G4ThreeVectorList
void ClipToSimpleLimits(G4ThreeVectorList &pPolygon, G4ThreeVectorList &outputPolygon, const G4VoxelLimits &pVoxelLimit)
G4double GetMaxExtent(const EAxis pAxis) const
G4double GetMinExtent(const EAxis pAxis) const
void G4ClippablePolygon::ClipToSimpleLimits |
( |
G4ThreeVectorList & |
pPolygon, |
|
|
G4ThreeVectorList & |
outputPolygon, |
|
|
const G4VoxelLimits & |
pVoxelLimit |
|
) |
| |
|
protected |
Definition at line 445 of file G4ClippablePolygon.cc.
450 G4int noVertices=pPolygon.size();
453 outputPolygon.clear();
455 for (i=0;i<noVertices;i++)
467 if (pVoxelLimit.
Inside(vStart))
469 if (pVoxelLimit.
Inside(vEnd))
473 outputPolygon.push_back(vEnd);
480 outputPolygon.push_back(vEnd);
485 if (pVoxelLimit.
Inside(vEnd))
490 outputPolygon.push_back(vStart);
491 outputPolygon.push_back(vEnd);
G4bool Inside(const G4ThreeVector &pVec) const
G4bool ClipToLimits(G4ThreeVector &pStart, G4ThreeVector &pEnd) const
G4bool G4ClippablePolygon::Empty |
( |
| ) |
const |
|
inline |
Definition at line 117 of file G4ClippablePolygon.cc.
129 if (noLeft == 0)
return false;
140 for( i=1; i<noLeft; i++ )
143 if (component <
min )
145 else if (component >
max )
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
Definition at line 190 of file G4ClippablePolygon.cc.
201 for( i=1; i<noLeft; i++ )
G4ThreeVectorList vertices
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
T max(const T t1, const T t2)
brief Return the largest of the two arguments
Definition at line 159 of file G4ClippablePolygon.cc.
170 for( i=1; i<noLeft; i++ )
G4ThreeVectorList vertices
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
T min(const T t1, const T t2)
brief Return the smallest of the two arguments
G4int G4ClippablePolygon::GetNumVertices |
( |
| ) |
const |
|
inline |
Definition at line 361 of file G4ClippablePolygon.cc.
374 if (noLeft == 0)
return false;
385 for( i=1; i<noLeft; i++ )
388 if (component <
min )
390 else if (component >
max )
double dot(const Hep3Vector &) const
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
Definition at line 231 of file G4ClippablePolygon.cc.
238 if (noLeft==0)
return false;
240 if (other.
Empty())
return true;
246 const G4double minOther = minPointOther->operator()(axis);
271 if (std::fabs(normalOther(axis)) > std::fabs(
normal(axis)))
virtual G4bool GetPlanerExtent(const G4ThreeVector &pointOnPlane, const G4ThreeVector &planeNormal, G4double &min, G4double &max) const
virtual const G4ThreeVector * GetMinPoint(const EAxis axis) const
const G4ThreeVector GetNormal() const
G4ThreeVectorList vertices
T min(const T t1, const T t2)
brief Return the smallest of the two arguments
Definition at line 101 of file G4ClippablePolygon.cc.
virtual void ClipAlongOneAxis(const G4VoxelLimits &voxelLimit, const EAxis axis)
G4ThreeVectorList vertices
G4double G4ClippablePolygon::kCarTolerance |
|
protected |
G4ThreeVectorList G4ClippablePolygon::vertices |
|
protected |
The documentation for this class was generated from the following files: