Geant4_10
Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
UPolyconeSide Class Reference

#include <UPolyconeSide.hh>

Inheritance diagram for UPolyconeSide:
Inheritance graph
[legend]
Collaboration diagram for UPolyconeSide:
Collaboration graph
[legend]

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)
 
UPolyconeSideoperator= (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)
 
UVCSGfaceClone ()
 
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
 
UIntersectingConecone
 
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
 
UVector3corners
 

Detailed Description

Definition at line 56 of file UPolyconeSide.hh.

Constructor & Destructor Documentation

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.

Here is the call graph for this function:

Here is the caller graph for this function:

UPolyconeSide::~UPolyconeSide ( )
virtual

Definition at line 152 of file UPolyconeSide.cc.

UPolyconeSide::UPolyconeSide ( const UPolyconeSide source)

Definition at line 165 of file UPolyconeSide.cc.

Here is the call graph for this function:

UPolyconeSide::UPolyconeSide ( __void__ &  )

Definition at line 137 of file UPolyconeSide.cc.

Member Function Documentation

UVCSGface* UPolyconeSide::Clone ( )
inlinevirtual

Implements UVCSGface.

Definition at line 92 of file UPolyconeSide.hh.

Here is the call graph for this function:

void UPolyconeSide::CopyStuff ( const UPolyconeSide source)
protected

Definition at line 198 of file UPolyconeSide.cc.

Here is the caller graph for this function:

bool UPolyconeSide::Distance ( const UVector3 p,
const UVector3 v,
bool  outgoing,
double  surfTolerance,
double &  distance,
double &  distFromSurface,
UVector3 normal,
bool &  isAllBehind 
)
virtual

Implements UVCSGface.

Definition at line 246 of file UPolyconeSide.cc.

Here is the call graph for this function:

double UPolyconeSide::DistanceAway ( const UVector3 p,
bool  opposite,
double &  distOutside2,
double *  rzNorm = 0 
)
protected

Definition at line 894 of file UPolyconeSide.cc.

Here is the call graph for this function:

Here is the caller graph for this function:

double UPolyconeSide::Extent ( const UVector3  axis)
virtual

Implements UVCSGface.

Definition at line 480 of file UPolyconeSide.cc.

Here is the call graph for this function:

void UPolyconeSide::FindLineIntersect ( double  x1,
double  y1,
double  tx1,
double  ty1,
double  x2,
double  y2,
double  tx2,
double  ty2,
double &  x,
double &  y 
)
staticprotected

Definition at line 1050 of file UPolyconeSide.cc.

double UPolyconeSide::GetPhi ( const UVector3 p)
protected

Definition at line 867 of file UPolyconeSide.cc.

Here is the call graph for this function:

Here is the caller graph for this function:

UVector3 UPolyconeSide::GetPointOnFace ( )
virtual

Implements UVCSGface.

Definition at line 1088 of file UPolyconeSide.cc.

Here is the call graph for this function:

VUSolid::EnumInside UPolyconeSide::Inside ( const UVector3 p,
double  tolerance,
double *  bestDistance 
)
virtual

Implements UVCSGface.

Definition at line 415 of file UPolyconeSide.cc.

Here is the call graph for this function:

UVector3 UPolyconeSide::Normal ( const UVector3 p,
double *  bestDistance 
)
virtual

Implements UVCSGface.

Definition at line 454 of file UPolyconeSide.cc.

Here is the call graph for this function:

UPolyconeSide & UPolyconeSide::operator= ( const UPolyconeSide source)

Definition at line 176 of file UPolyconeSide.cc.

Here is the call graph for this function:

bool UPolyconeSide::PointOnCone ( const UVector3 hit,
double  normSign,
const UVector3 p,
const UVector3 v,
UVector3 normal 
)
protected

Definition at line 981 of file UPolyconeSide.cc.

Here is the call graph for this function:

Here is the caller graph for this function:

double UPolyconeSide::Safety ( const UVector3 p,
bool  outgoing 
)
virtual

Implements UVCSGface.

Definition at line 375 of file UPolyconeSide.cc.

Here is the call graph for this function:

double UPolyconeSide::SurfaceArea ( )
virtual

Implements UVCSGface.

Definition at line 1075 of file UPolyconeSide.cc.

Here is the call graph for this function:

Member Data Documentation

bool UPolyconeSide::allBehind
protected

Definition at line 132 of file UPolyconeSide.hh.

UIntersectingCone* UPolyconeSide::cone
protected

Definition at line 134 of file UPolyconeSide.hh.

UVector3* UPolyconeSide::corners
protected

Definition at line 148 of file UPolyconeSide.hh.

double UPolyconeSide::deltaPhi
protected

Definition at line 129 of file UPolyconeSide.hh.

double UPolyconeSide::length
protected

Definition at line 138 of file UPolyconeSide.hh.

int UPolyconeSide::ncorners
protected

Definition at line 147 of file UPolyconeSide.hh.

double UPolyconeSide::nextRS
protected

Definition at line 141 of file UPolyconeSide.hh.

double UPolyconeSide::nextZS
protected

Definition at line 141 of file UPolyconeSide.hh.

bool UPolyconeSide::phiIsOpen
protected

Definition at line 131 of file UPolyconeSide.hh.

double UPolyconeSide::prevRS
protected

Definition at line 139 of file UPolyconeSide.hh.

double UPolyconeSide::prevZS
protected

Definition at line 139 of file UPolyconeSide.hh.

double UPolyconeSide::r[2]
protected

Definition at line 128 of file UPolyconeSide.hh.

double UPolyconeSide::rNorm
protected

Definition at line 136 of file UPolyconeSide.hh.

double UPolyconeSide::rNormEdge[2]
protected

Definition at line 144 of file UPolyconeSide.hh.

double UPolyconeSide::rS
protected

Definition at line 137 of file UPolyconeSide.hh.

double UPolyconeSide::startPhi
protected

Definition at line 129 of file UPolyconeSide.hh.

double UPolyconeSide::z[2]
protected

Definition at line 128 of file UPolyconeSide.hh.

double UPolyconeSide::zNorm
protected

Definition at line 136 of file UPolyconeSide.hh.

double UPolyconeSide::zNormEdge[2]
protected

Definition at line 144 of file UPolyconeSide.hh.

double UPolyconeSide::zS
protected

Definition at line 137 of file UPolyconeSide.hh.


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