|
Geant4
10.00.p01
|
#include <UCons.hh>
Inheritance diagram for UCons:
Collaboration diagram for UCons:Public Member Functions | |
| UCons (const std::string &pName, double pRmin1, double pRmax1, double pRmin2, double pRmax2, double pDz, double pSPhi, double pDPhi) | |
| ~UCons () | |
| double | GetInnerRadiusMinusZ () const |
| double | GetOuterRadiusMinusZ () const |
| double | GetInnerRadiusPlusZ () const |
| double | GetOuterRadiusPlusZ () const |
| double | GetZHalfLength () const |
| double | GetStartPhiAngle () const |
| double | GetDeltaPhiAngle () const |
| void | SetInnerRadiusMinusZ (double Rmin1) |
| void | SetOuterRadiusMinusZ (double Rmax1) |
| void | SetInnerRadiusPlusZ (double Rmin2) |
| void | SetOuterRadiusPlusZ (double Rmax2) |
| void | SetZHalfLength (double newDz) |
| void | SetStartPhiAngle (double newSPhi, bool trig=true) |
| void | SetDeltaPhiAngle (double newDPhi) |
| double | GetCubicVolume () |
| double | GetSurfaceArea () |
| bool | Normal (const UVector3 &p, UVector3 &n) const |
| double | DistanceToIn (const UVector3 &p, const UVector3 &v, double aPstep=UUtils::kInfinity) const |
| double | SafetyFromOutside (const UVector3 &p, bool precise) const |
| double | DistanceToOut (const UVector3 &aPoint, const UVector3 &aDirection, UVector3 &aNormalVector, bool &aConvex, double aPstep=UUtils::kInfinity) const |
| double | SafetyFromInside (const UVector3 &p, bool precise) const |
| UGeometryType | GetEntityType () const |
| UVector3 | GetPointOnSurface () const |
| VUSolid * | Clone () const |
| std::ostream & | StreamInfo (std::ostream &os) const |
| void | Extent (UVector3 &aMin, UVector3 &aMax) const |
| virtual void | GetParametersList (int, double *) const |
| virtual void | ComputeBBox (UBBox *, bool) |
| VUSolid::EnumInside | Inside (const UVector3 &p) const |
| UCons () | |
| UCons (const UCons &rhs) | |
| UCons & | operator= (const UCons &rhs) |
| double | GetRmin1 () const |
| double | GetRmax1 () const |
| double | GetRmin2 () const |
| double | GetRmax2 () const |
| double | GetDz () const |
| double | GetSPhi () const |
| double | GetDPhi () 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 |
Private Types | |
| enum | ESide { kNull, kRMin, kRMax, kSPhi, kEPhi, kPZ, kMZ } |
| enum | ENorm { kNRMin, kNRMax, kNSPhi, kNEPhi, kNZ } |
Private Member Functions | |
| double | Capacity () |
| double | SurfaceArea () |
| void | Initialize () |
| void | CheckSPhiAngle (double sPhi) |
| void | CheckDPhiAngle (double dPhi) |
| void | CheckPhiAngles (double sPhi, double dPhi) |
| void | InitializeTrigonometry () |
| UVector3 | ApproxSurfaceNormal (const UVector3 &p) const |
Private Attributes | |
| double | fCubicVolume |
| double | fSurfaceArea |
| double | kRadTolerance |
| double | kAngTolerance |
| double | fRmin1 |
| double | fRmin2 |
| double | fRmax1 |
| double | fRmax2 |
| double | fDz |
| double | fSPhi |
| double | fDPhi |
| double | sinCPhi |
| double | cosCPhi |
| double | cosHDPhiOT |
| double | cosHDPhiIT |
| double | sinSPhi |
| double | cosSPhi |
| double | sinEPhi |
| double | cosEPhi |
| bool | fPhiFullCone |
| double | secRMin |
| double | tanRMin |
| double | tanRMax |
| double | secRMax |
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 |
|
private |
|
private |
| UCons::UCons | ( | const std::string & | pName, |
| double | pRmin1, | ||
| double | pRmax1, | ||
| double | pRmin2, | ||
| double | pRmax2, | ||
| double | pDz, | ||
| double | pSPhi, | ||
| double | pDPhi | ||
| ) |
Definition at line 40 of file UCons.cc.
References CheckPhiAngles(), e3, UUtils::Exception(), FatalErrorInArguments, VUSolid::faTolerance, fRmin1, fRmin2, VUSolid::frTolerance, VUSolid::GetName(), Initialize(), kAngTolerance, and kRadTolerance.
Here is the call graph for this function:| UCons::UCons | ( | ) |
Definition at line 93 of file UCons.cc.
References Initialize().
Referenced by Clone().
Here is the call graph for this function:
Here is the caller graph for this function:| UCons::UCons | ( | const UCons & | rhs | ) |
Definition at line 115 of file UCons.cc.
References Initialize().
Here is the call graph for this function:Definition at line 299 of file UCons.cc.
References UUtils::Exception(), fDPhi, fDz, fPhiFullCone, fRmax2, fRmin2, fSPhi, kNEPhi, kNRMax, kNRMin, kNSPhi, kNZ, UUtils::kPi, secRMax, secRMin, tanRMax, tanRMin, Warning, UVector3::x, UVector3::y, and UVector3::z.
Referenced by Normal().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprivatevirtual |
Implements VUSolid.
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
virtual |
|
inlinevirtual |
|
virtual |
Implements VUSolid.
Definition at line 441 of file UCons.cc.
References cosCPhi, cosEPhi, cosHDPhiIT, cosHDPhiOT, cosSPhi, UVector3::Dot(), fDz, fPhiFullCone, fRmax1, fRmax2, fRmin1, fRmin2, UUtils::kInfinity, kRadTolerance, G4INCL::Math::max(), secRMax, secRMin, sinCPhi, sinEPhi, sinSPhi, tanRMax, tanRMin, VUSolid::Tolerance(), UVector3::x, UVector3::y, and UVector3::z.
Here is the call graph for this function:
|
virtual |
Implements VUSolid.
Definition at line 1355 of file UCons.cc.
References cosCPhi, cosEPhi, cosSPhi, UVector3::Dot(), UUtils::Exception(), fDPhi, fDz, fPhiFullCone, fRmax1, fRmax2, fRmin1, fRmin2, fSPhi, kAngTolerance, kEPhi, UUtils::kInfinity, kMZ, kNull, UUtils::kPi, kPZ, kRadTolerance, kRMax, kRMin, kSPhi, secRMax, secRMin, sinCPhi, sinEPhi, sinSPhi, tanRMax, tanRMin, VUSolid::Tolerance(), UVector3::Unit(), Warning, UVector3::x, UVector3::y, and UVector3::z.
Here is the call graph for this function:
|
inline |
|
inline |
Referenced by G4UCons::GetDeltaPhiAngle(), and GetParametersList().
Here is the caller graph for this function:
|
inline |
|
inline |
|
virtual |
|
inline |
Referenced by G4UCons::GetInnerRadiusMinusZ(), and GetParametersList().
Here is the caller graph for this function:
|
inline |
Referenced by G4UCons::GetInnerRadiusPlusZ(), and GetParametersList().
Here is the caller graph for this function:
|
inline |
Referenced by G4UCons::GetOuterRadiusMinusZ(), and GetParametersList().
Here is the caller graph for this function:
|
inline |
Referenced by G4UCons::GetOuterRadiusPlusZ(), and GetParametersList().
Here is the caller graph for this function:
|
virtual |
Implements VUSolid.
Definition at line 2237 of file UCons.cc.
References GetDeltaPhiAngle(), GetInnerRadiusMinusZ(), GetInnerRadiusPlusZ(), GetOuterRadiusMinusZ(), GetOuterRadiusPlusZ(), GetStartPhiAngle(), and GetZHalfLength().
Here is the call graph for this function:
|
virtual |
Implements VUSolid.
Definition at line 2135 of file UCons.cc.
References fDPhi, fDz, fPhiFullCone, fRmax1, fRmax2, fRmin1, fRmin2, fSPhi, UUtils::GetRadiusInRing(), UUtils::Random(), and UUtils::sqr().
Here is the call graph for this function:
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Referenced by GetParametersList(), and G4UCons::GetStartPhiAngle().
Here is the caller graph for this function:
|
inline |
|
inline |
Referenced by GetParametersList(), and G4UCons::GetZHalfLength().
Here is the caller graph for this function:
|
inlineprivate |
|
inlineprivate |
|
inlinevirtual |
Implements VUSolid.
Definition at line 127 of file UCons.hh.
References VUSolid::eInside, VUSolid::eOutside, VUSolid::eSurface, fDPhi, fDz, fPhiFullCone, fRmax1, fRmax2, fRmin1, fRmin2, fSPhi, kAngTolerance, UUtils::kPi, kRadTolerance, VUSolid::Tolerance(), UVector3::x, UVector3::y, and UVector3::z.
Referenced by SafetyFromInside().
Here is the call graph for this function:
Here is the caller graph for this function:Implements VUSolid.
Definition at line 175 of file UCons.cc.
References ApproxSurfaceNormal(), UUtils::Exception(), fDPhi, fDz, fPhiFullCone, fRmax2, fRmin1, fRmin2, fSPhi, kAngTolerance, UUtils::kInfinity, UUtils::kPi, secRMax, secRMin, tanRMax, tanRMin, VUSolid::Tolerance(), UVector3::Unit(), Warning, UVector3::x, UVector3::y, and UVector3::z.
Here is the call graph for this function:Definition at line 131 of file UCons.cc.
References cosCPhi, cosEPhi, cosHDPhiIT, cosHDPhiOT, cosSPhi, fDPhi, fDz, fPhiFullCone, fRmax1, fRmax2, fRmin1, fRmin2, fSPhi, Initialize(), kAngTolerance, kRadTolerance, sinCPhi, sinEPhi, and sinSPhi.
Here is the call graph for this function:
|
virtual |
Implements VUSolid.
Definition at line 1999 of file UCons.cc.
References cosCPhi, cosEPhi, cosSPhi, degree, VUSolid::eOutside, UUtils::Exception(), fDz, fPhiFullCone, fRmax1, fRmax2, fRmin1, fRmin2, Inside(), UUtils::kInfinity, secRMax, secRMin, sinCPhi, sinEPhi, sinSPhi, tanRMax, tanRMin, Warning, UVector3::x, UVector3::y, and UVector3::z.
Here is the call graph for this function:
|
virtual |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
virtual |
|
inlineprivatevirtual |
Implements VUSolid.
|
private |
Definition at line 285 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), operator=(), SafetyFromInside(), and SafetyFromOutside().
|
private |
Definition at line 285 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), operator=(), SafetyFromInside(), and SafetyFromOutside().
|
private |
Definition at line 285 of file UCons.hh.
Referenced by DistanceToIn(), and operator=().
|
private |
Definition at line 285 of file UCons.hh.
Referenced by DistanceToIn(), and operator=().
|
private |
Definition at line 285 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), operator=(), and SafetyFromInside().
|
private |
Definition at line 281 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToOut(), GetPointOnSurface(), Inside(), Normal(), operator=(), SafetyFromOutside(), and StreamInfo().
|
private |
Definition at line 281 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), Extent(), GetPointOnSurface(), Inside(), Normal(), operator=(), SafetyFromInside(), SafetyFromOutside(), and StreamInfo().
|
private |
Definition at line 290 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), GetPointOnSurface(), Inside(), Normal(), operator=(), SafetyFromInside(), and SafetyFromOutside().
|
private |
Definition at line 281 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), Extent(), GetPointOnSurface(), Inside(), operator=(), SafetyFromInside(), SafetyFromOutside(), and StreamInfo().
|
private |
Definition at line 281 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), Extent(), GetPointOnSurface(), Inside(), Normal(), operator=(), SafetyFromInside(), SafetyFromOutside(), and StreamInfo().
|
private |
Definition at line 281 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), GetPointOnSurface(), Inside(), Normal(), operator=(), SafetyFromInside(), SafetyFromOutside(), StreamInfo(), and UCons().
|
private |
Definition at line 281 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), GetPointOnSurface(), Inside(), Normal(), operator=(), SafetyFromInside(), SafetyFromOutside(), StreamInfo(), and UCons().
|
private |
Definition at line 281 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToOut(), GetPointOnSurface(), Inside(), Normal(), operator=(), SafetyFromOutside(), and StreamInfo().
|
private |
Definition at line 277 of file UCons.hh.
Referenced by DistanceToOut(), Inside(), Normal(), operator=(), and UCons().
|
private |
Definition at line 277 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), Inside(), operator=(), and UCons().
|
private |
Definition at line 292 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), Normal(), SafetyFromInside(), and SafetyFromOutside().
|
private |
Definition at line 292 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), Normal(), SafetyFromInside(), and SafetyFromOutside().
|
private |
Definition at line 285 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), operator=(), SafetyFromInside(), and SafetyFromOutside().
|
private |
Definition at line 285 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), operator=(), SafetyFromInside(), and SafetyFromOutside().
|
private |
Definition at line 285 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), operator=(), and SafetyFromInside().
|
private |
Definition at line 292 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), Normal(), SafetyFromInside(), and SafetyFromOutside().
|
private |
Definition at line 292 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), Normal(), SafetyFromInside(), and SafetyFromOutside().