52 : pplace(direction, axis, Pt0), Convex(0), projectedBoundary(0)
73 : pplace( (*pVec)[0]-(*pVec)[1],
74 ((*pVec)[pVec->size()-1]-(*pVec)[0])
75 .cross((*pVec)[0]-(*pVec)[1]),
92 for (
size_t i=0; i< polygon->
GetSegments().size(); i++)
95 bounds.push_back(polygon);
103 for (
size_t i=0; i< polygon->
GetSegments().size(); i++)
106 bounds.push_back(polygon);
111 for (
size_t j=0; j< bounds.size(); j++)
186 NormalX =
new G4Ray(tmp, norm);
235 b = norm.
x() * dirx + norm.
y() * diry + norm.
z() * dirz;
247 a = norm.
x() * (srf_point.
x() - startx) +
248 norm.
y() * (srf_point.
y() - starty) +
249 norm.
z() * (srf_point.
z() - startz) ;
256 solx = startx + t * dirx;
257 soly = starty + t * diry;
258 solz = startz + t * dirz;
270 G4bool xhit = (dirx < 0 && solx <= startx) || (dirx >= 0 && solx >= startx);
271 G4bool yhit = (diry < 0 && soly <= starty) || (diry >= 0 && soly >= starty);
272 G4bool zhit = (dirz < 0 && solz <= startz) || (dirz >= 0 && solz >= startz);
274 if( xhit && yhit && zhit ) {