Exemple #1
0
        public static Topology ToTopologic(this Curve curve)
        {
            if (curve == null)
            {
                return(null);
            }

            LineCurve lineCurve = curve as LineCurve;

            if (lineCurve != null)
            {
                return(lineCurve.Line.ToTopologic());
            }

            Rhino.Geometry.NurbsCurve nurbsCurve = curve as Rhino.Geometry.NurbsCurve;
            if (nurbsCurve != null)
            {
                return(nurbsCurve.ToTopologic());
            }

            ArcCurve arcCurve = curve as ArcCurve;

            if (arcCurve != null)
            {
                return(arcCurve.ToTopologic());
            }

            BrepEdge brepEdge = curve as BrepEdge;

            if (brepEdge != null)
            {
                return(brepEdge.ToTopologic());
            }

            PolylineCurve ghPolylineCurve = curve as PolylineCurve;

            if (ghPolylineCurve != null)
            {
                return(ghPolylineCurve.ToTopologic());
            }

            PolyCurve ghPolyCurve = curve as PolyCurve;

            if (ghPolyCurve != null)
            {
                return(ghPolyCurve.ToTopologic());
            }

            return(null);
        }