Ejemplo n.º 1
0
        public ICurve CurveToSpeckle(DB.Curve curve, string units = null)
        {
            var u = units ?? ModelUnits;

            switch (curve)
            {
            case DB.Line line:
                return(LineToSpeckle(line, u));

            case DB.Arc arc:
                if (!arc.IsBound)
                {
                    return(CircleToSpeckle(arc, u));
                }
                return(ArcToSpeckle(arc, u));

            case DB.Ellipse ellipse:
                return(EllipseToSpeckle(ellipse, u));

            case DB.NurbSpline nurbs:
                return(NurbsToSpeckle(nurbs, u));

            case DB.HermiteSpline spline:
                return(HermiteSplineToSpeckle(spline, u));

            default:
                throw new Speckle.Core.Logging.SpeckleException("Cannot convert Curve of type " + curve.GetType());
            }
        }
Ejemplo n.º 2
0
        public ICurve CurveToSpeckle(DB.Curve curve)
        {
            switch (curve)
            {
            case DB.Line line:
                return(LineToSpeckle(line));

            case DB.Arc arc:
                if (!arc.IsBound)
                {
                    return(CircleToSpeckle(arc));
                }
                return(ArcToSpeckle(arc));

            case DB.Ellipse ellipse:
                return(EllipseToSpeckle(ellipse));

            case DB.NurbSpline nurbs:
                return(NurbsToSpeckle(nurbs));

            case DB.HermiteSpline spline:
                return(HermiteSplineToSpeckle(spline));

            default:
                throw new Exception("Cannot convert Curve of type " + curve.GetType());
            }
        }