|
Geant4.10
|
#include <UTrd.hh>
Public Member Functions | |
| UTrd () | |
| UTrd (const std::string &pName, double pdx1, double pdx2, double pdy1, double pdy2, double pdz) | |
| virtual | ~UTrd () |
| UTrd (const UTrd &rhs) | |
| UTrd & | operator= (const UTrd &rhs) |
| double | GetXHalfLength1 () const |
| double | GetXHalfLength2 () const |
| double | GetYHalfLength1 () const |
| double | GetYHalfLength2 () const |
| double | GetZHalfLength () const |
| void | SetXHalfLength1 (double val) |
| void | SetXHalfLength2 (double val) |
| void | SetYHalfLength1 (double val) |
| void | SetYHalfLength2 (double val) |
| void | SetZHalfLength (double val) |
| EnumInside | Inside (const UVector3 &aPoint) const |
| virtual double | SafetyFromInside (const UVector3 &aPoint, bool aAccurate=false) const |
| double | SafetyFromInsideAccurate (const UVector3 &aPoint) const |
| virtual double | SafetyFromOutside (const UVector3 &aPoint, bool aAccurate=false) const |
| double | SafetyFromOutsideAccurate (const UVector3 &aPoint) const |
| virtual double | DistanceToIn (const UVector3 &aPoint, const UVector3 &aDirection, double aPstep=UUtils::kInfinity) const |
| virtual double | DistanceToOut (const UVector3 &aPoint, const UVector3 &aDirection, UVector3 &aNormalVector, bool &aConvex, double aPstep=UUtils::kInfinity) const |
| virtual bool | Normal (const UVector3 &aPoint, UVector3 &aNormal) const |
| void | CheckAndSetAllParameters (double pdx1, double pdx2, double pdy1, double pdy2, double pdz) |
| void | SetAllParameters (double pdx1, double pdx2, double pdy1, double pdy2, double pdz) |
| void | Extent (UVector3 &aMin, UVector3 &aMax) const |
| double | Capacity () |
| double | SurfaceArea () |
| VUSolid * | Clone () const |
| UGeometryType | GetEntityType () const |
| virtual void | ComputeBBox (UBBox *, bool) |
| virtual void | GetParametersList (int, double *) const |
| std::ostream & | StreamInfo (std::ostream &os) const |
| UVector3 | GetPointOnSurface () 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 |
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 Public Member Functions inherited from VUSolid | |
| static double | Tolerance () |
Static Protected Attributes inherited from VUSolid | |
| static double | fgTolerance = 1.0E-9 |
| static double | frTolerance = 1.0E-9 |
| static double | faTolerance = 1.0E-9 |
| UTrd::UTrd | ( | const std::string & | pName, |
| double | pdx1, | ||
| double | pdx2, | ||
| double | pdy1, | ||
| double | pdy2, | ||
| double | pdz | ||
| ) |
Definition at line 29 of file UTrd.cc.
References CheckAndSetAllParameters().
|
inlinevirtual |
Implements VUSolid.
| void UTrd::CheckAndSetAllParameters | ( | double | pdx1, |
| double | pdx2, | ||
| double | pdy1, | ||
| double | pdy2, | ||
| double | pdz | ||
| ) |
Definition at line 38 of file UTrd.cc.
References UUtils::Exception(), FatalErrorInArguments, VUSolid::fgTolerance, VUSolid::GetName(), and G4INCL::Math::max().
Referenced by SetAllParameters(), and UTrd().
|
virtual |
|
virtual |
Implements VUSolid.
Definition at line 321 of file UTrd.cc.
References VUSolid::fgTolerance, smax, UVector3::x, UVector3::y, and UVector3::z.
|
inlinevirtual |
Implements VUSolid.
Definition at line 555 of file UTrd.cc.
References UUtils::Exception(), VUSolid::fgTolerance, UVector3::Set(), Warning, UVector3::x, UVector3::y, and UVector3::z.
Returns the full 3D cartesian extent of the solid. OK
Implements VUSolid.
Definition at line 1126 of file UTrd.cc.
References G4INCL::Math::max(), and UVector3::Set().
|
virtual |
Implements VUSolid.
Definition at line 1276 of file UTrd.cc.
References GetXHalfLength1(), GetXHalfLength2(), GetYHalfLength1(), GetYHalfLength2(), and GetZHalfLength().
|
virtual |
Implements VUSolid.
Definition at line 1163 of file UTrd.cc.
References UUtils::Random().
|
inline |
Referenced by GetParametersList(), and G4UTrd::GetXHalfLength1().
|
inline |
Referenced by GetParametersList(), and G4UTrd::GetXHalfLength2().
|
inline |
Referenced by GetParametersList(), and G4UTrd::GetYHalfLength1().
|
inline |
Referenced by GetParametersList(), and G4UTrd::GetYHalfLength2().
|
inline |
Referenced by GetParametersList(), and G4UTrd::GetZHalfLength().
|
virtual |
Return whether point inside/outside/on surface Split into radius checks
Classify point location with respect to solid: o eInside - inside the solid o eSurface - close to surface within tolerance o eOutside - outside the solid
Implements VUSolid.
Definition at line 255 of file UTrd.cc.
References VUSolid::eInside, VUSolid::eOutside, VUSolid::eSurface, VUSolid::fgTolerance, test::x, UVector3::x, UVector3::y, and UVector3::z.
Referenced by SafetyFromInside().
Implements VUSolid.
Definition at line 932 of file UTrd.cc.
References UUtils::Exception(), fcos(), VUSolid::fgTolerance, UVector3::Normalize(), Warning, UVector3::x, UVector3::y, z, and UVector3::z.
|
virtual |
Implements VUSolid.
Definition at line 83 of file UTrd.cc.
References UUtils::Exception(), Inside(), kOutside, python.hepunit::mm, SafetyFromInsideAccurate(), Warning, UVector3::x, UVector3::y, and UVector3::z.
|
inline |
Definition at line 132 of file UTrd.cc.
References UVector3::x, UVector3::y, and UVector3::z.
Referenced by SafetyFromInside().
|
virtual |
Implements VUSolid.
Definition at line 170 of file UTrd.cc.
References SafetyFromOutsideAccurate(), UVector3::x, UVector3::y, and UVector3::z.
|
inline |
Definition at line 209 of file UTrd.cc.
References UVector3::x, UVector3::y, and UVector3::z.
Referenced by SafetyFromOutside().
| void UTrd::SetAllParameters | ( | double | pdx1, |
| double | pdx2, | ||
| double | pdy1, | ||
| double | pdy2, | ||
| double | pdz | ||
| ) |
Definition at line 77 of file UTrd.cc.
References CheckAndSetAllParameters().
Referenced by G4UTrd::SetAllParameters().
|
inline |
Referenced by G4UTrd::SetXHalfLength1().
|
inline |
Referenced by G4UTrd::SetXHalfLength2().
|
inline |
Referenced by G4UTrd::SetYHalfLength1().
|
inline |
Referenced by G4UTrd::SetYHalfLength2().
|
inline |
Referenced by G4UTrd::SetZHalfLength().
|
virtual |
|
inlinevirtual |
Implements VUSolid.
1.8.7