52 : startPhi(theStartPhi), totalPhi(theTotalPhi),
53 rx1(0.), ry1(0.), dx1(0.), dy1(0.),
54 rx2(0.), ry2(0.), dx2(0.), dy2(0.),
55 concave(theTotalPhi >
pi)
74 dx1 = +
ry1*10*kCarTolerance;
75 dy1 = -
rx1*10*kCarTolerance;
79 dx2 = -
ry2*10*kCarTolerance;
80 dy2 = +
rx2*10*kCarTolerance;
86 radius += 10*kCarTolerance;
87 zLo -= 10*kCarTolerance;
88 zHi += 10*kCarTolerance;
96 : radius(0.), zLo(0.), zHi(0.), phiIsOpen(0.), startPhi(0.), totalPhi(0.),
97 rx1(0.), ry1(0.), dx1(0.), dy1(0.), rx2(0.), ry2(0.), dx2(0.), dy2(0.),
119 if (p.perp() >
radius)
return true;
120 if (p.z() <
zLo)
return true;
121 if (p.z() >
zHi)
return true;
127 if ( ((p.x()-
dx1)*
ry1 - (p.y()-
dy1)*
rx1) < 0)
return false;
128 if ( ((p.x()-
dx2)*
ry2 - (p.y()-
dy2)*
rx2) > 0)
return false;
132 if ( ((p.x()-
dx1)*
ry1 - (p.y()-
dy1)*
rx1) > 0)
return true;
133 if ( ((p.x()-
dx2)*
ry2 - (p.y()-
dy2)*
rx2) < 0)
return true;
153 G4double cross = p.x()*v.y() - p.y()*v.x();
154 if (cross >
radius)
return true;
158 G4double dot = p.x()*v.x() + p.y()*v.y();
159 if (dot > 0)
return true;
CLHEP::Hep3Vector G4ThreeVector
G4double GetSurfaceTolerance() const
G4bool MustBeOutside(const G4ThreeVector &p) const
G4EnclosingCylinder(const G4ReduciblePolygon *rz, G4bool phiIsOpen, G4double startPhi, G4double totalPhi)
G4bool ShouldMiss(const G4ThreeVector &p, const G4ThreeVector &v) const
static G4GeometryTolerance * GetInstance()