Geant4  10.01.p02
UIntersectingCone Class Reference

#include <UIntersectingCone.hh>

Public Member Functions

 UIntersectingCone (const double r[2], const double z[2])
 
virtual ~UIntersectingCone ()
 
int LineHitsCone (const UVector3 &p, const UVector3 &v, double &s1, double &s2)
 
bool HitOn (const double r, const double z)
 
double RLo () const
 
double RHi () const
 
double ZLo () const
 
double ZHi () const
 

Protected Member Functions

int LineHitsCone1 (const UVector3 &p, const UVector3 &v, double &s1, double &s2)
 
int LineHitsCone1Optimized (const UVector3 &p, const UVector3 &v, double &s1, double &s2)
 
int LineHitsCone2 (const UVector3 &p, const UVector3 &v, double &s1, double &s2)
 

Protected Attributes

double zLo
 
double zHi
 
double rLo
 
double rHi
 
bool type1
 
double A
 
double B
 

Static Protected Attributes

static const double EpsilonQuad = 1.0 / 9.0E99
 

Detailed Description

Definition at line 27 of file UIntersectingCone.hh.

Constructor & Destructor Documentation

UIntersectingCone::UIntersectingCone ( const double  r[2],
const double  z[2] 
)

Definition at line 29 of file UIntersectingCone.cc.

References A, B, rHi, rLo, VUSolid::Tolerance(), type1, zHi, and zLo.

+ Here is the call graph for this function:

UIntersectingCone::~UIntersectingCone ( )
virtual

Definition at line 92 of file UIntersectingCone.cc.

Member Function Documentation

bool UIntersectingCone::HitOn ( const double  r,
const double  z 
)

Definition at line 103 of file UIntersectingCone.cc.

References rHi, type1, and zHi.

Referenced by UPolyconeSide::PointOnCone().

+ Here is the caller graph for this function:

int UIntersectingCone::LineHitsCone ( const UVector3 p,
const UVector3 v,
double &  s1,
double &  s2 
)

Definition at line 129 of file UIntersectingCone.cc.

References LineHitsCone1(), LineHitsCone2(), and type1.

Referenced by UPolyhedraSide::Distance(), UPolyconeSide::Distance(), and UPolyhedraSide::LineHitsSegments().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int UIntersectingCone::LineHitsCone1 ( const UVector3 p,
const UVector3 v,
double &  s1,
double &  s2 
)
protected

Definition at line 209 of file UIntersectingCone.cc.

References a, A, B, EpsilonQuad, UUtils::sqr(), UVector3::x(), UVector3::y(), UVector3::z(), and G4InuclParticleNames::z0.

Referenced by LineHitsCone().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int UIntersectingCone::LineHitsCone1Optimized ( const UVector3 p,
const UVector3 v,
double &  s1,
double &  s2 
)
protected

Definition at line 301 of file UIntersectingCone.cc.

References a, A, B, EpsilonQuad, UUtils::sqr(), UVector3::x(), UVector3::y(), UVector3::z(), and G4InuclParticleNames::z0.

+ Here is the call graph for this function:

int UIntersectingCone::LineHitsCone2 ( const UVector3 p,
const UVector3 v,
double &  s1,
double &  s2 
)
protected

Definition at line 416 of file UIntersectingCone.cc.

References a, A, B, EpsilonQuad, UUtils::sqr(), UVector3::x(), UVector3::y(), UVector3::z(), and G4InuclParticleNames::z0.

Referenced by LineHitsCone().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

double UIntersectingCone::RHi ( ) const
inline

Definition at line 42 of file UIntersectingCone.hh.

References rHi.

double UIntersectingCone::RLo ( ) const
inline

Definition at line 38 of file UIntersectingCone.hh.

References rLo.

double UIntersectingCone::ZHi ( ) const
inline

Definition at line 50 of file UIntersectingCone.hh.

References zHi.

Referenced by UPolyhedraSide::Extent(), and UPolyconeSide::Extent().

+ Here is the caller graph for this function:

double UIntersectingCone::ZLo ( ) const
inline

Definition at line 46 of file UIntersectingCone.hh.

References zLo.

Referenced by UPolyhedraSide::Extent(), and UPolyconeSide::Extent().

+ Here is the caller graph for this function:

Member Data Documentation

double UIntersectingCone::A
protected
double UIntersectingCone::B
protected
const double UIntersectingCone::EpsilonQuad = 1.0 / 9.0E99
staticprotected

Definition at line 88 of file UIntersectingCone.hh.

Referenced by LineHitsCone1(), LineHitsCone1Optimized(), and LineHitsCone2().

double UIntersectingCone::rHi
protected

Definition at line 67 of file UIntersectingCone.hh.

Referenced by HitOn(), RHi(), and UIntersectingCone().

double UIntersectingCone::rLo
protected

Definition at line 67 of file UIntersectingCone.hh.

Referenced by RLo(), and UIntersectingCone().

bool UIntersectingCone::type1
protected

Definition at line 70 of file UIntersectingCone.hh.

Referenced by HitOn(), LineHitsCone(), and UIntersectingCone().

double UIntersectingCone::zHi
protected

Definition at line 67 of file UIntersectingCone.hh.

Referenced by HitOn(), UIntersectingCone(), and ZHi().

double UIntersectingCone::zLo
protected

Definition at line 67 of file UIntersectingCone.hh.

Referenced by UIntersectingCone(), and ZLo().


The documentation for this class was generated from the following files: