private bool InterceptArcWith(Arc arc, double tolerance = GeometrySettings.DEFAULT_TOLERANCE) { var c1 = this.ToCircle(); var c2 = arc.ToCircle(); var possibles = c1.Intersect(c2, tolerance); foreach (var p in possibles) { if (this.Contains(p, tolerance) && arc.Contains(p, tolerance)) { return(true); } } return(false); }
private IEnumerable <Vector2> InterceptArc(Arc arc, double tolerance = GeometrySettings.DEFAULT_TOLERANCE) { var intersections = new List <Vector2>(); var c1 = this.ToCircle(); var c2 = arc.ToCircle(); var possibles = c1.Intersect(c2, tolerance); foreach (var p in possibles) { if (this.Contains(p, tolerance) && arc.Contains(p, tolerance)) { intersections.Add(p); } } return(intersections); }
private bool InterceptArcWith(Arc arc, double tolerance = GeometrySettings.DEFAULT_TOLERANCE) { var c1 = this.ToCircle(); var c2 = arc.ToCircle(); var possibles = c1.Intersect(c2, tolerance); foreach (var p in possibles) { if (this.Contains(p, tolerance) && arc.Contains(p, tolerance)) return true; } return false; }
private IEnumerable<Vector2> InterceptArc(Arc arc, double tolerance = GeometrySettings.DEFAULT_TOLERANCE) { var intersections = new List<Vector2>(); var c1 = this.ToCircle(); var c2 = arc.ToCircle(); var possibles = c1.Intersect(c2, tolerance); foreach (var p in possibles) { if (this.Contains(p, tolerance) && arc.Contains(p, tolerance)) intersections.Add(p); } return intersections; }