예제 #1
0
 public override ICurve[] Intersect(BoundingRect thisBounds, ISurface other, BoundingRect otherBounds)
 {
     if (other is PlaneSurface ps)
     {
         IDualSurfaceCurve[] dsc = GetPlaneIntersection(ps, otherBounds.Left, otherBounds.Right, otherBounds.Bottom, otherBounds.Top, 0.0);
         List <ICurve>       res = new List <ICurve>();
         for (int i = 0; i < dsc.Length; i++)
         {
             res.Add(dsc[i].Curve3D);
         }
         return(res.ToArray());
     }
     if (other is ICylinder cylo)
     {
         ICurve[] res = Surfaces.Intersect(this as ICylinder, other as ICylinder);
     }
     return(base.Intersect(thisBounds, other, otherBounds));
 }