Geant4
10.00.p01
|
#include <UTet.hh>
Public Member Functions | |
UTet (const std::string &name, UVector3 anchor, UVector3 p2, UVector3 p3, UVector3 p4, bool *degeneracyFlag=0) | |
virtual | ~UTet () |
EnumInside | Inside (const UVector3 &p) const |
bool | Normal (const UVector3 &aPoint, UVector3 &aNormal) const |
double | SafetyFromInside (const UVector3 &aPoint, bool aAccurate=false) const |
double | SafetyFromOutside (const UVector3 &aPoint, bool aAccurate=false) const |
double | DistanceToIn (const UVector3 &aPoint, const UVector3 &aDirection, double aPstep=UUtils::kInfinity) const |
double | DistanceToOut (const UVector3 &aPoint, const UVector3 &aDirection, UVector3 &aNormalVector, bool &aConvex, double aPstep=UUtils::kInfinity) const |
void | Extent (UVector3 &aMin, UVector3 &aMax) const |
double | Capacity () |
double | SurfaceArea () |
UGeometryType | GetEntityType () const |
void | ComputeBBox (UBBox *, bool) |
void | GetParametersList (int aNumber, double *aArray) const |
VUSolid * | Clone () const |
UVector3 | GetPointOnSurface () const |
std::ostream & | StreamInfo (std::ostream &os) const |
UTet (const UTet &rhs) | |
UTet & | operator= (const UTet &rhs) |
const char * | CVSHeaderVers () |
const char * | CVSFileVers () |
void | PrintWarnings (bool flag) |
std::vector< UVector3 > | GetVertices () const |
Public Member Functions inherited from VUSolid | |
VUSolid () | |
VUSolid (const std::string &name) | |
virtual | ~VUSolid () |
double | GetCarTolerance () const |
double | GetRadTolerance () const |
double | GetAngTolerance () const |
void | SetCarTolerance (double eps) |
void | SetRadTolerance (double eps) |
void | SetAngTolerance (double eps) |
virtual void | ExtentAxis (EAxisType aAxis, double &aMin, double &aMax) const |
const std::string & | GetName () const |
void | SetName (const std::string &aName) |
virtual void | SamplePointsInside (int, UVector3 *) const |
virtual void | SamplePointsOnSurface (int, UVector3 *) const |
virtual void | SamplePointsOnEdge (int, UVector3 *) const |
double | EstimateCubicVolume (int nStat, double epsilon) const |
double | EstimateSurfaceArea (int nStat, double ell) const |
Static Public Member Functions | |
static bool | CheckDegeneracy (UVector3 &anchor, UVector3 &p2, UVector3 &p3, UVector3 &p4) |
Static Public Member Functions inherited from VUSolid | |
static double | Tolerance () |
Private Member Functions | |
UVector3 | GetPointOnFace (UVector3 p1, UVector3 p2, UVector3 p3, double &area) const |
Private Attributes | |
double | fCubicVolume |
double | fSurfaceArea |
UVector3 | fAnchor |
UVector3 | fP2 |
UVector3 | fP3 |
UVector3 | fP4 |
UVector3 | fMiddle |
UVector3 | fNormal123 |
UVector3 | fNormal142 |
UVector3 | fNormal134 |
UVector3 | fNormal234 |
bool | warningFlag |
double | fCdotN123 |
double | fCdotN142 |
double | fCdotN134 |
double | fCdotN234 |
double | fXMin |
double | fXMax |
double | fYMin |
double | fYMax |
double | fZMin |
double | fZMax |
double | fDx |
double | fDy |
double | fDz |
double | fTol |
double | fMaxSize |
Static Private Attributes | |
static const char | CVSVers [] |
Additional Inherited Members | |
Public Types inherited from VUSolid | |
enum | EnumInside { eInside =0, eSurface =1, eOutside =2 } |
enum | EAxisType { eXaxis =0, eYaxis =1, eZaxis =2 } |
Static Protected Attributes inherited from VUSolid | |
static double | fgTolerance = 1.0E-9 |
static double | frTolerance = 1.0E-9 |
static double | faTolerance = 1.0E-9 |
UTet::UTet | ( | const std::string & | name, |
UVector3 | anchor, | ||
UVector3 | p2, | ||
UVector3 | p3, | ||
UVector3 | p4, | ||
bool * | degeneracyFlag = 0 |
||
) |
Definition at line 35 of file UTet.cc.
References UVector3::Cross(), UVector3::Dot(), UUtils::Exception(), fAnchor, FatalErrorInArguments, fCdotN123, fCdotN134, fCdotN142, fCdotN234, fCubicVolume, fDx, fDy, fDz, fMaxSize, fMiddle, fNormal123, fNormal134, fNormal142, fNormal234, fP2, fP3, fP4, fSurfaceArea, fTol, fXMax, fXMin, fYMax, fYMin, fZMax, fZMin, UVector3::Mag(), G4INCL::Math::max(), G4INCL::Math::min(), UVector3::Unit(), UVector3::x, UVector3::y, and UVector3::z.
Referenced by Clone().
|
virtual |
|
static |
|
virtual |
|
inlinevirtual |
|
virtual |
Implements VUSolid.
Definition at line 322 of file UTet.cc.
References UVector3::Dot(), fCdotN123, fCdotN134, fCdotN142, fCdotN234, fNormal123, fNormal134, fNormal142, fNormal234, fTol, UUtils::kInfinity, G4INCL::Math::max(), and UVector3::Unit().
|
virtual |
Implements VUSolid.
Definition at line 422 of file UTet.cc.
References UVector3::Dot(), UUtils::Exception(), fCdotN123, fCdotN134, fCdotN142, fCdotN234, fNormal123, fNormal134, fNormal142, fNormal234, fTol, UUtils::kInfinity, G4INCL::Math::max(), G4INCL::Math::min(), CLHEP::normal(), UVector3::Unit(), Warning, and warningFlag.
Implements VUSolid.
Definition at line 615 of file UTet.cc.
References fDx, fDy, fDz, UVector3::x, UVector3::y, and UVector3::z.
|
virtual |
|
virtual |
Implements VUSolid.
Definition at line 626 of file UTet.cc.
References fAnchor, fP2, fP3, fP4, UVector3::x, UVector3::y, and UVector3::z.
|
private |
Definition at line 554 of file UTet.cc.
References UVector3::Cross(), and UUtils::Random().
Referenced by GetPointOnSurface().
|
virtual |
Implements VUSolid.
Definition at line 574 of file UTet.cc.
References fAnchor, fP2, fP3, fP4, GetPointOnFace(), and UUtils::Random().
std::vector< UVector3 > UTet::GetVertices | ( | ) | const |
|
virtual |
Implements VUSolid.
Definition at line 217 of file UTet.cc.
References UVector3::Dot(), VUSolid::eInside, VUSolid::eOutside, VUSolid::eSurface, fCdotN123, fCdotN134, fCdotN142, fCdotN234, fNormal123, fNormal134, fNormal142, fNormal234, and fTol.
Implements VUSolid.
Definition at line 247 of file UTet.cc.
References UVector3::Dot(), fCdotN123, fCdotN134, fCdotN142, fCdotN234, fNormal123, fNormal134, fNormal142, fNormal234, fTol, and UVector3::Unit().
Definition at line 167 of file UTet.cc.
References fAnchor, fCdotN123, fCdotN134, fCdotN142, fCdotN234, fCubicVolume, fDx, fDy, fDz, fMaxSize, fMiddle, fNormal123, fNormal134, fNormal142, fNormal234, fP2, fP3, fP4, fSurfaceArea, fTol, fXMax, fXMin, fYMax, fYMin, fZMax, fZMin, and warningFlag.
|
inline |
Definition at line 99 of file UTet.hh.
References warningFlag.
|
virtual |
Implements VUSolid.
Definition at line 505 of file UTet.cc.
References UVector3::Dot(), fCdotN123, fCdotN134, fCdotN142, fCdotN234, fNormal123, fNormal134, fNormal142, fNormal234, fTol, and G4INCL::Math::min().
|
virtual |
|
virtual |
Implements VUSolid.
Definition at line 525 of file UTet.cc.
References fAnchor, fNormal123, fNormal134, fNormal142, fNormal234, fP2, fP3, fP4, and VUSolid::GetName().
|
virtual |
|
staticprivate |
Definition at line 123 of file UTet.hh.
Referenced by CVSFileVers().
|
private |
Definition at line 127 of file UTet.hh.
Referenced by GetParametersList(), GetPointOnSurface(), GetVertices(), operator=(), StreamInfo(), and UTet().
|
private |
Definition at line 132 of file UTet.hh.
Referenced by DistanceToIn(), DistanceToOut(), Inside(), Normal(), operator=(), SafetyFromInside(), and UTet().
|
private |
Definition at line 132 of file UTet.hh.
Referenced by DistanceToIn(), DistanceToOut(), Inside(), Normal(), operator=(), SafetyFromInside(), and UTet().
|
private |
Definition at line 132 of file UTet.hh.
Referenced by DistanceToIn(), DistanceToOut(), Inside(), Normal(), operator=(), SafetyFromInside(), and UTet().
|
private |
Definition at line 132 of file UTet.hh.
Referenced by DistanceToIn(), DistanceToOut(), Inside(), Normal(), operator=(), SafetyFromInside(), and UTet().
|
private |
Definition at line 119 of file UTet.hh.
Referenced by Capacity(), operator=(), and UTet().
|
private |
Definition at line 134 of file UTet.hh.
Referenced by Extent(), operator=(), and UTet().
|
private |
Definition at line 134 of file UTet.hh.
Referenced by Extent(), operator=(), and UTet().
|
private |
Definition at line 134 of file UTet.hh.
Referenced by Extent(), operator=(), and UTet().
|
private |
Definition at line 134 of file UTet.hh.
Referenced by operator=(), SafetyFromOutside(), and UTet().
|
private |
Definition at line 127 of file UTet.hh.
Referenced by operator=(), SafetyFromOutside(), and UTet().
|
private |
Definition at line 128 of file UTet.hh.
Referenced by DistanceToIn(), DistanceToOut(), Inside(), Normal(), operator=(), SafetyFromInside(), StreamInfo(), and UTet().
|
private |
Definition at line 128 of file UTet.hh.
Referenced by DistanceToIn(), DistanceToOut(), Inside(), Normal(), operator=(), SafetyFromInside(), StreamInfo(), and UTet().
|
private |
Definition at line 128 of file UTet.hh.
Referenced by DistanceToIn(), DistanceToOut(), Inside(), Normal(), operator=(), SafetyFromInside(), StreamInfo(), and UTet().
|
private |
Definition at line 128 of file UTet.hh.
Referenced by DistanceToIn(), DistanceToOut(), Inside(), Normal(), operator=(), SafetyFromInside(), StreamInfo(), and UTet().
|
private |
Definition at line 127 of file UTet.hh.
Referenced by GetParametersList(), GetPointOnSurface(), GetVertices(), operator=(), StreamInfo(), and UTet().
|
private |
Definition at line 127 of file UTet.hh.
Referenced by GetParametersList(), GetPointOnSurface(), GetVertices(), operator=(), StreamInfo(), and UTet().
|
private |
Definition at line 127 of file UTet.hh.
Referenced by GetParametersList(), GetPointOnSurface(), GetVertices(), operator=(), StreamInfo(), and UTet().
|
private |
Definition at line 119 of file UTet.hh.
Referenced by operator=(), SurfaceArea(), and UTet().
|
private |
Definition at line 134 of file UTet.hh.
Referenced by DistanceToIn(), DistanceToOut(), Inside(), Normal(), operator=(), SafetyFromInside(), SafetyFromOutside(), and UTet().
|
private |
Definition at line 133 of file UTet.hh.
Referenced by operator=(), and UTet().
|
private |
Definition at line 133 of file UTet.hh.
Referenced by operator=(), and UTet().
|
private |
Definition at line 133 of file UTet.hh.
Referenced by operator=(), and UTet().
|
private |
Definition at line 133 of file UTet.hh.
Referenced by operator=(), and UTet().
|
private |
Definition at line 133 of file UTet.hh.
Referenced by operator=(), and UTet().
|
private |
Definition at line 133 of file UTet.hh.
Referenced by operator=(), and UTet().
|
private |
Definition at line 130 of file UTet.hh.
Referenced by DistanceToOut(), operator=(), and PrintWarnings().