Esempio n. 1
0
        // Casting to GH Data Types
        public Brep ToBrep()
        {
            //if (IsPlanar())
            //{
            //    return ToPlanarBrep();
            //}
            //else
            //{
            //    return ToNonPlanarBrep();
            //}
            if (GeometryType == SurfaceGeometryType.NurbsSurfaceType)
            {
                return(ToNurbsSurface());
            }
            var myEdges = new List <Curve>();
            var sEdges  = from e in Edges
                          select e.ToCurve();

            myEdges.AddRange(Curve.JoinCurves(sEdges));
            if (!(Openings == null))
            {
                foreach (var o in Openings)
                {
                    var oEdges = from e in o.Edges
                                 select e.ToCurve();

                    myEdges.AddRange(Curve.JoinCurves(oEdges));
                }
            }
            return(UtilLibrary.CreateNonPlanarBrep(myEdges, 0.001));
        }