Exemple #1
0
        public static void CreateRenderMeshes(bool showProgress, MeshingParameterStyle meshingStyle, List<RhinoObject> objs = null, RhinoDoc doc = null)
        {
            if (doc == null)
            {
                doc = RhinoDoc.ActiveDoc;
            }
            if (doc == null) return;

            if (objs == null)
            {
                objs = doc.Objects.Where(o => o.GetMeshes(MeshType.Render).Length == 0).ToList();
            }
            else
            {
                objs = objs.Where(o => o.GetMeshes(MeshType.Render).Length == 0).ToList();
            }
            
            if (objs.Count == 0) return;

            using (var meshingParametersU = doc.GetMeshingParameters(meshingStyle))
            {
                var meshingParameters = meshingParametersU;
                var caption = String.Format("Creating meshes for {0} objects ...", objs.Count);
                objs._ForeachParallel_WithOrWithoutProgressWindow(showProgress, caption, obj => obj.CreateMeshes(MeshType.Render, meshingParameters, false));
            }
        }
Exemple #2
0
        public static void _CreateMesh(this RhinoObject obj, MeshType meshType = MeshType.Render, MeshingParameterStyle meshQuaility = MeshingParameterStyle.None)
        {
            if (obj == null)
            {
                return;
            }
            var doc = RhinoDoc.ActiveDoc;

            if (doc == null)
            {
                return;
            }

            if (meshQuaility == MeshingParameterStyle.None)
            {
                meshQuaility = doc.MeshingParameterStyle;
            }
            var res = obj.CreateMeshes(meshType, doc.GetMeshingParameters(meshQuaility), false);
        }