#include <G4Curve.hh>
Inheritance diagram for G4Curve:
Definition at line 58 of file G4Curve.hh.
G4Curve::G4Curve | ( | ) |
Definition at line 39 of file G4Curve.cc.
References G4GeometryTolerance::GetInstance(), G4GeometryTolerance::GetSurfaceTolerance(), and kCarTolerance.
00040 : bBox(G4BoundingBox3D::space), pStart(0.), pEnd(0.), pRange(0.), 00041 bounded(false), sameSense(true) 00042 { 00043 kCarTolerance = G4GeometryTolerance::GetInstance()->GetSurfaceTolerance(); 00044 }
G4Curve::~G4Curve | ( | ) | [virtual] |
G4Curve::G4Curve | ( | const G4Curve & | c | ) |
const G4BoundingBox3D * G4Curve::BBox | ( | ) | const [inline] |
Definition at line 43 of file G4Curve.icc.
References bBox.
Referenced by G4CompositeCurve::InitBounded().
00044 { 00045 return &bBox; 00046 }
const G4Point3D & G4Curve::GetEnd | ( | ) | const [inline] |
Definition at line 57 of file G4Curve.icc.
References end.
Referenced by G4Parabola::InitBounded(), G4Line::InitBounded(), G4Hyperbola::InitBounded(), G4Ellipse::InitBounded(), and G4CircularCurve::InitBounded().
00058 { 00059 return end; 00060 }
G4String G4Curve::GetEntityType | ( | ) | const [virtual] |
Reimplemented in G4CompositeCurve.
Definition at line 72 of file G4Curve.cc.
00073 { 00074 return G4String("G4Curve"); 00075 }
G4double G4Curve::GetPEnd | ( | ) | const [inline] |
Definition at line 69 of file G4Curve.icc.
References pEnd.
Referenced by G4Parabola::Project(), G4Line::Project(), G4Hyperbola::Project(), G4Ellipse::Project(), G4CircularCurve::Project(), and G4BSplineCurve::Project().
00070 { 00071 return pEnd; 00072 }
virtual G4double G4Curve::GetPMax | ( | ) | const [pure virtual] |
Implemented in G4BSplineCurve, G4CircularCurve, G4CompositeCurve, G4Ellipse, G4Hyperbola, G4Line, and G4Parabola.
Referenced by IsPOn().
Implemented in G4BSplineCurve, G4CircularCurve, G4CompositeCurve, G4Ellipse, G4Hyperbola, G4Line, and G4Parabola.
Referenced by G4CurveRayIntersection::GetDistance(), G4CurveRayIntersection::GetPoint(), and G4CurvePoint::GetPoint().
Implemented in G4BSplineCurve, G4CircularCurve, G4CompositeCurve, G4Ellipse, G4Hyperbola, G4Line, and G4Parabola.
Referenced by G4CurveRayIntersection::GetPPoint(), and G4CurvePoint::GetPPoint().
G4double G4Curve::GetPStart | ( | ) | const [inline] |
Definition at line 63 of file G4Curve.icc.
References pStart.
Referenced by G4Parabola::Project(), G4Line::Project(), G4Hyperbola::Project(), G4Ellipse::Project(), G4CircularCurve::Project(), and G4BSplineCurve::Project().
00064 { 00065 return pStart; 00066 }
G4int G4Curve::GetSameSense | ( | ) | const [inline] |
Definition at line 174 of file G4Curve.icc.
References sameSense.
Referenced by G4Ellipse::Project(), G4Line::Tangent(), and G4Ellipse::Tangent().
00175 { 00176 return sameSense; 00177 }
const G4Point3D & G4Curve::GetStart | ( | ) | const [inline] |
Definition at line 51 of file G4Curve.icc.
References start.
Referenced by G4Parabola::InitBounded(), G4Line::InitBounded(), G4Hyperbola::InitBounded(), G4Ellipse::InitBounded(), and G4CircularCurve::InitBounded().
00052 { 00053 return start; 00054 }
virtual void G4Curve::InitBounded | ( | ) | [protected, pure virtual] |
Implemented in G4BSplineCurve, G4CircularCurve, G4CompositeCurve, G4Ellipse, G4Hyperbola, G4Line, and G4Parabola.
Implemented in G4BSplineCurve, G4CircularCurve, G4CompositeCurve, G4Ellipse, G4Hyperbola, G4Line, and G4Parabola.
G4bool G4Curve::IsBounded | ( | ) | const [inline] |
Definition at line 162 of file G4Curve.icc.
References bounded.
Referenced by G4Parabola::Project(), G4Hyperbola::Project(), G4Ellipse::Project(), G4BSplineCurve::Project(), and G4CurveRayIntersection::Update().
00163 { 00164 return bounded; 00165 }
Definition at line 150 of file G4Curve.icc.
References GetPMax(), and pRange.
Referenced by G4Parabola::InitBounded(), G4Hyperbola::InitBounded(), G4Ellipse::InitBounded(), G4CircularCurve::InitBounded(), and G4CurveRayIntersection::Update().
00151 { 00152 G4double diff= param-pStart; 00153 G4double pMax= GetPMax(); 00154 00155 if (pMax>0) 00156 diff-= std::floor(diff/pMax)*pMax; 00157 00158 return diff<=pRange; 00159 }
const char * G4Curve::Name | ( | ) | const [virtual] |
Definition at line 57 of file G4Curve.cc.
References bounded, end, kCarTolerance, pEnd, pRange, pStart, sameSense, and start.
00058 { 00059 if (&c == this) { return *this; } 00060 start = c.start; 00061 end = c.end; 00062 pStart = c.pStart; 00063 pEnd = c.pEnd; 00064 pRange = c.pRange; 00065 bounded = c.bounded; 00066 sameSense = c.sameSense; 00067 kCarTolerance = c.kCarTolerance; 00068 00069 return *this; 00070 }
virtual G4Curve* G4Curve::Project | ( | const G4Transform3D & | tr = G4Transform3D::Identity |
) | [pure virtual] |
Implemented in G4BSplineCurve, G4CircularCurve, G4CompositeCurve, G4Ellipse, G4Hyperbola, G4Line, and G4Parabola.
Definition at line 118 of file G4Curve.icc.
Referenced by G4CompositeCurve::G4CompositeCurve(), G4Ellipse::Init(), G4BSplineCurve::Init(), G4Parabola::Project(), G4Line::Project(), G4Hyperbola::Project(), G4Ellipse::Project(), and G4CircularCurve::Project().
void G4Curve::SetParentSrfPtr | ( | const G4Surface * | ) | [virtual] |
void G4Curve::SetSameSense | ( | G4int | sameSense0 | ) | [inline] |
Definition at line 168 of file G4Curve.icc.
References sameSense.
Referenced by G4SurfaceBoundary::Project(), and G4Ellipse::Project().
00169 { 00170 sameSense= sameSense0; 00171 }
virtual G4bool G4Curve::Tangent | ( | G4CurvePoint & | cp, | |
G4Vector3D & | v | |||
) | [pure virtual] |
Implemented in G4BSplineCurve, G4CircularCurve, G4CompositeCurve, G4Ellipse, G4Hyperbola, G4Line, and G4Parabola.
Referenced by G4SurfaceBoundary::Tangent(), and G4CompositeCurve::Tangent().
G4BoundingBox3D G4Curve::bBox [protected] |
Definition at line 160 of file G4Curve.hh.
Referenced by BBox(), G4BSplineCurve::G4BSplineCurve(), G4CircularCurve::G4CircularCurve(), G4Conic::G4Conic(), G4Ellipse::G4Ellipse(), G4Hyperbola::G4Hyperbola(), G4Line::G4Line(), G4Parabola::G4Parabola(), G4Parabola::InitBounded(), G4Line::InitBounded(), G4Hyperbola::InitBounded(), G4Ellipse::InitBounded(), G4CompositeCurve::InitBounded(), G4CircularCurve::InitBounded(), G4BSplineCurve::InitBounded(), G4Parabola::operator=(), G4Line::operator=(), G4Hyperbola::operator=(), G4Ellipse::operator=(), G4Conic::operator=(), G4CircularCurve::operator=(), and G4BSplineCurve::operator=().
G4bool G4Curve::bounded [protected] |
Definition at line 166 of file G4Curve.hh.
Referenced by G4BSplineCurve::G4BSplineCurve(), G4CircularCurve::G4CircularCurve(), G4Conic::G4Conic(), G4Ellipse::G4Ellipse(), G4Hyperbola::G4Hyperbola(), G4Line::G4Line(), G4Parabola::G4Parabola(), IsBounded(), G4Parabola::operator=(), G4Line::operator=(), G4Hyperbola::operator=(), G4Ellipse::operator=(), operator=(), G4Conic::operator=(), G4CircularCurve::operator=(), and G4BSplineCurve::operator=().
G4Point3D G4Curve::end [protected] |
Definition at line 162 of file G4Curve.hh.
Referenced by G4BSplineCurve::G4BSplineCurve(), G4CircularCurve::G4CircularCurve(), G4Conic::G4Conic(), G4Ellipse::G4Ellipse(), G4Hyperbola::G4Hyperbola(), G4Line::G4Line(), G4Parabola::G4Parabola(), GetEnd(), G4Parabola::operator=(), G4Line::operator=(), G4Hyperbola::operator=(), G4Ellipse::operator=(), operator=(), G4Conic::operator=(), G4CircularCurve::operator=(), and G4BSplineCurve::operator=().
G4double G4Curve::kCarTolerance [protected] |
Definition at line 168 of file G4Curve.hh.
Referenced by G4Curve(), G4Parabola::IntersectRay2D(), G4Line::IntersectRay2D(), G4Hyperbola::IntersectRay2D(), G4Ellipse::IntersectRay2D(), operator=(), and G4Line::Project().
G4double G4Curve::pEnd [protected] |
Definition at line 164 of file G4Curve.hh.
Referenced by G4BSplineCurve::G4BSplineCurve(), G4CircularCurve::G4CircularCurve(), G4Conic::G4Conic(), G4Ellipse::G4Ellipse(), G4Hyperbola::G4Hyperbola(), G4Line::G4Line(), G4Parabola::G4Parabola(), GetPEnd(), G4Parabola::operator=(), G4Line::operator=(), G4Hyperbola::operator=(), G4Ellipse::operator=(), operator=(), G4Conic::operator=(), G4CircularCurve::operator=(), and G4BSplineCurve::operator=().
G4double G4Curve::pRange [protected] |
Definition at line 165 of file G4Curve.hh.
Referenced by G4BSplineCurve::G4BSplineCurve(), G4CircularCurve::G4CircularCurve(), G4Conic::G4Conic(), G4Ellipse::G4Ellipse(), G4Hyperbola::G4Hyperbola(), G4Line::G4Line(), G4Parabola::G4Parabola(), IsPOn(), G4Parabola::operator=(), G4Line::operator=(), G4Hyperbola::operator=(), G4Ellipse::operator=(), operator=(), G4Conic::operator=(), G4CircularCurve::operator=(), and G4BSplineCurve::operator=().
G4double G4Curve::pStart [protected] |
Definition at line 163 of file G4Curve.hh.
Referenced by G4BSplineCurve::G4BSplineCurve(), G4CircularCurve::G4CircularCurve(), G4Conic::G4Conic(), G4Ellipse::G4Ellipse(), G4Hyperbola::G4Hyperbola(), G4Line::G4Line(), G4Parabola::G4Parabola(), GetPStart(), G4Parabola::operator=(), G4Line::operator=(), G4Hyperbola::operator=(), G4Ellipse::operator=(), operator=(), G4Conic::operator=(), G4CircularCurve::operator=(), and G4BSplineCurve::operator=().
G4int G4Curve::sameSense [protected] |
Definition at line 167 of file G4Curve.hh.
Referenced by G4BSplineCurve::G4BSplineCurve(), G4CircularCurve::G4CircularCurve(), G4Conic::G4Conic(), G4Ellipse::G4Ellipse(), G4Hyperbola::G4Hyperbola(), G4Line::G4Line(), G4Parabola::G4Parabola(), GetSameSense(), G4Parabola::operator=(), G4Line::operator=(), G4Hyperbola::operator=(), G4Ellipse::operator=(), operator=(), G4Conic::operator=(), G4CircularCurve::operator=(), G4BSplineCurve::operator=(), and SetSameSense().
G4Point3D G4Curve::start [protected] |
Definition at line 161 of file G4Curve.hh.
Referenced by G4BSplineCurve::G4BSplineCurve(), G4CircularCurve::G4CircularCurve(), G4Conic::G4Conic(), G4Ellipse::G4Ellipse(), G4Hyperbola::G4Hyperbola(), G4Line::G4Line(), G4Parabola::G4Parabola(), GetStart(), G4Parabola::operator=(), G4Line::operator=(), G4Hyperbola::operator=(), G4Ellipse::operator=(), operator=(), G4Conic::operator=(), G4CircularCurve::operator=(), and G4BSplineCurve::operator=().