Geant4
10.01
|
#include <UPolyconeSide.hh>
Public Member Functions | |
UPolyconeSide (const UPolyconeSideRZ *prevRZ, const UPolyconeSideRZ *tail, const UPolyconeSideRZ *head, const UPolyconeSideRZ *nextRZ, double phiStart, double deltaPhi, bool phiIsOpen, bool isAllBehind=false) | |
virtual | ~UPolyconeSide () |
UPolyconeSide (const UPolyconeSide &source) | |
UPolyconeSide & | operator= (const UPolyconeSide &source) |
bool | Distance (const UVector3 &p, const UVector3 &v, bool outgoing, double surfTolerance, double &distance, double &distFromSurface, UVector3 &normal, bool &isAllBehind) |
double | Safety (const UVector3 &p, bool outgoing) |
VUSolid::EnumInside | Inside (const UVector3 &p, double tolerance, double *bestDistance) |
UVector3 | Normal (const UVector3 &p, double *bestDistance) |
double | Extent (const UVector3 axis) |
UVCSGface * | Clone () |
double | SurfaceArea () |
UVector3 | GetPointOnFace () |
UPolyconeSide (__void__ &) | |
Public Member Functions inherited from UVCSGface | |
UVCSGface () | |
virtual | ~UVCSGface () |
Protected Member Functions | |
double | DistanceAway (const UVector3 &p, bool opposite, double &distOutside2, double *rzNorm=0) |
bool | PointOnCone (const UVector3 &hit, double normSign, const UVector3 &p, const UVector3 &v, UVector3 &normal) |
void | CopyStuff (const UPolyconeSide &source) |
double | GetPhi (const UVector3 &p) |
Static Protected Member Functions | |
static void | FindLineIntersect (double x1, double y1, double tx1, double ty1, double x2, double y2, double tx2, double ty2, double &x, double &y) |
Protected Attributes | |
double | r [2] |
double | z [2] |
double | startPhi |
double | deltaPhi |
bool | phiIsOpen |
bool | allBehind |
UIntersectingCone * | cone |
double | rNorm |
double | zNorm |
double | rS |
double | zS |
double | length |
double | prevRS |
double | prevZS |
double | nextRS |
double | nextZS |
double | rNormEdge [2] |
double | zNormEdge [2] |
int | ncorners |
UVector3 * | corners |
Private Attributes | |
double | tolerance |
double | fSurfaceArea |
Definition at line 56 of file UPolyconeSide.hh.
UPolyconeSide::UPolyconeSide | ( | const UPolyconeSideRZ * | prevRZ, |
const UPolyconeSideRZ * | tail, | ||
const UPolyconeSideRZ * | head, | ||
const UPolyconeSideRZ * | nextRZ, | ||
double | phiStart, | ||
double | deltaPhi, | ||
bool | phiIsOpen, | ||
bool | isAllBehind = false |
||
) |
Definition at line 31 of file UPolyconeSide.cc.
References allBehind, cone, corners, deltaPhi, fSurfaceArea, UUtils::kPi, length, ncorners, nextRS, nextZS, phiIsOpen, prevRS, prevZS, UPolyconeSideRZ::r, r, rNorm, rNormEdge, rS, startPhi, VUSolid::Tolerance(), tolerance, UPolyconeSideRZ::z, z, zNorm, zNormEdge, and zS.
Referenced by Clone().
|
virtual |
Definition at line 152 of file UPolyconeSide.cc.
UPolyconeSide::UPolyconeSide | ( | const UPolyconeSide & | source | ) |
Definition at line 165 of file UPolyconeSide.cc.
References CopyStuff().
UPolyconeSide::UPolyconeSide | ( | __void__ & | ) |
|
inlinevirtual |
Implements UVCSGface.
Definition at line 92 of file UPolyconeSide.hh.
References UPolyconeSide().
|
protected |
Definition at line 198 of file UPolyconeSide.cc.
References allBehind, cone, corners, deltaPhi, fSurfaceArea, length, ncorners, nextRS, nextZS, phiIsOpen, prevRS, prevZS, r, rNorm, rNormEdge, rS, startPhi, tolerance, z, zNorm, zNormEdge, and zS.
Referenced by operator=(), and UPolyconeSide().
|
virtual |
Implements UVCSGface.
Definition at line 246 of file UPolyconeSide.cc.
References allBehind, cone, DBL_MIN, DistanceAway(), UIntersectingCone::LineHitsCone(), UVector3::Perp(), PointOnCone(), rNorm, UVector3::x, UVector3::y, and zNorm.
|
protected |
Definition at line 894 of file UPolyconeSide.cc.
References d1, d2, deltaPhi, GetPhi(), UUtils::kPi, length, G4INCL::Math::max(), UVector3::Perp(), phiIsOpen, r, rNorm, rNormEdge, rS, UUtils::sqr(), startPhi, z, UVector3::z, zNorm, zNormEdge, and zS.
Referenced by Distance(), Inside(), Normal(), and Safety().
|
virtual |
Implements UVCSGface.
Definition at line 480 of file UPolyconeSide.cc.
References a, cd, cone, DBL_MIN, deltaPhi, UVector3::Dot(), GetPhi(), UUtils::kPi, UVector3::Perp(), UVector3::Perp2(), phiIsOpen, r, startPhi, z, UVector3::z, UIntersectingCone::ZHi(), and UIntersectingCone::ZLo().
|
staticprotected |
Definition at line 1050 of file UPolyconeSide.cc.
|
protected |
Definition at line 867 of file UPolyconeSide.cc.
References UVector3::Phi().
Referenced by DistanceAway(), Extent(), and PointOnCone().
|
virtual |
Implements UVCSGface.
Definition at line 1088 of file UPolyconeSide.cc.
References deltaPhi, r, UUtils::Random(), startPhi, and z.
|
virtual |
Implements UVCSGface.
Definition at line 415 of file UPolyconeSide.cc.
References DistanceAway(), VUSolid::eInside, VUSolid::eOutside, and VUSolid::eSurface.
Implements UVCSGface.
Definition at line 454 of file UPolyconeSide.cc.
References DistanceAway(), UVector3::Perp(), rNorm, UVector3::Unit(), UVector3::x, UVector3::y, and zNorm.
UPolyconeSide & UPolyconeSide::operator= | ( | const UPolyconeSide & | source | ) |
Definition at line 176 of file UPolyconeSide.cc.
References cone, CopyStuff(), corners, and phiIsOpen.
|
protected |
Definition at line 981 of file UPolyconeSide.cc.
References cone, corners, UVector3::Cross(), DBL_MIN, deltaPhi, UVector3::Dot(), GetPhi(), UIntersectingCone::HitOn(), UUtils::kPi, UVector3::Perp(), phiIsOpen, rNorm, startPhi, VUSolid::Tolerance(), UVector3::x, UVector3::y, UVector3::z, and zNorm.
Referenced by Distance().
|
virtual |
Implements UVCSGface.
Definition at line 375 of file UPolyconeSide.cc.
References DistanceAway(), UUtils::kInfinity, and VUSolid::Tolerance().
|
virtual |
Implements UVCSGface.
Definition at line 1075 of file UPolyconeSide.cc.
References deltaPhi, fSurfaceArea, r, UUtils::sqr(), and z.
|
protected |
Definition at line 132 of file UPolyconeSide.hh.
Referenced by CopyStuff(), Distance(), and UPolyconeSide().
|
protected |
Definition at line 134 of file UPolyconeSide.hh.
Referenced by CopyStuff(), Distance(), Extent(), operator=(), PointOnCone(), UPolyconeSide(), and ~UPolyconeSide().
|
protected |
Definition at line 148 of file UPolyconeSide.hh.
Referenced by CopyStuff(), operator=(), PointOnCone(), UPolyconeSide(), and ~UPolyconeSide().
|
protected |
Definition at line 129 of file UPolyconeSide.hh.
Referenced by CopyStuff(), DistanceAway(), Extent(), GetPointOnFace(), PointOnCone(), SurfaceArea(), and UPolyconeSide().
|
private |
Definition at line 152 of file UPolyconeSide.hh.
Referenced by CopyStuff(), SurfaceArea(), and UPolyconeSide().
|
protected |
Definition at line 138 of file UPolyconeSide.hh.
Referenced by CopyStuff(), DistanceAway(), and UPolyconeSide().
|
protected |
Definition at line 147 of file UPolyconeSide.hh.
Referenced by CopyStuff(), and UPolyconeSide().
|
protected |
Definition at line 141 of file UPolyconeSide.hh.
Referenced by CopyStuff(), and UPolyconeSide().
|
protected |
Definition at line 141 of file UPolyconeSide.hh.
Referenced by CopyStuff(), and UPolyconeSide().
|
protected |
Definition at line 131 of file UPolyconeSide.hh.
Referenced by CopyStuff(), DistanceAway(), Extent(), operator=(), PointOnCone(), UPolyconeSide(), and ~UPolyconeSide().
|
protected |
Definition at line 139 of file UPolyconeSide.hh.
Referenced by CopyStuff(), and UPolyconeSide().
|
protected |
Definition at line 139 of file UPolyconeSide.hh.
Referenced by CopyStuff(), and UPolyconeSide().
|
protected |
Definition at line 128 of file UPolyconeSide.hh.
Referenced by CopyStuff(), DistanceAway(), Extent(), GetPointOnFace(), SurfaceArea(), and UPolyconeSide().
|
protected |
Definition at line 136 of file UPolyconeSide.hh.
Referenced by CopyStuff(), Distance(), DistanceAway(), Normal(), PointOnCone(), and UPolyconeSide().
|
protected |
Definition at line 144 of file UPolyconeSide.hh.
Referenced by CopyStuff(), DistanceAway(), and UPolyconeSide().
|
protected |
Definition at line 137 of file UPolyconeSide.hh.
Referenced by CopyStuff(), DistanceAway(), and UPolyconeSide().
|
protected |
Definition at line 129 of file UPolyconeSide.hh.
Referenced by CopyStuff(), DistanceAway(), Extent(), GetPointOnFace(), PointOnCone(), and UPolyconeSide().
|
private |
Definition at line 151 of file UPolyconeSide.hh.
Referenced by CopyStuff(), and UPolyconeSide().
|
protected |
Definition at line 128 of file UPolyconeSide.hh.
Referenced by CopyStuff(), DistanceAway(), Extent(), GetPointOnFace(), SurfaceArea(), and UPolyconeSide().
|
protected |
Definition at line 136 of file UPolyconeSide.hh.
Referenced by CopyStuff(), Distance(), DistanceAway(), Normal(), PointOnCone(), and UPolyconeSide().
|
protected |
Definition at line 144 of file UPolyconeSide.hh.
Referenced by CopyStuff(), DistanceAway(), and UPolyconeSide().
|
protected |
Definition at line 137 of file UPolyconeSide.hh.
Referenced by CopyStuff(), DistanceAway(), and UPolyconeSide().