Beispiel #1
0
bool WorkspaceBound::Intersects(const AxisSweptPoint& c, AngleSet& arcs) const
{
  if(balls.empty()) {
    arcs.SetCircle();
    return true;
  }
  if(!balls[0].intersects(c,arcs)) return false;
  AngleSet temp;
  for(size_t i=1;i<balls.size();i++) {
    if(!balls[i].intersects(c,temp)) { return false; }
    arcs.Intersect(temp);
    if(arcs.empty()) return false;
  }
  return true;
}