Example #1
0
        public static MeshGeometry3D ToMeshGeometry3D(this DMesh3 mesh)
        {
            var vertices  = mesh.Vertices();
            var uiPoints  = new Point3DCollection(mesh.VertexCount);
            var indexes   = mesh.TriangleIndices();
            var uiIndexes = new IntCollection();

            foreach (var v in vertices)
            {
                uiPoints.Add(v.ToPoint3D());
            }

            foreach (var i in indexes)
            {
                uiIndexes.Add(i);
            }

            return(new MeshGeometry3D()
            {
                Positions = uiPoints.ToVector3Collection(),
                TriangleIndices = uiIndexes
            });
        }