Exemplo n.º 1
0
        public static void AppendLine(DMesh3 mesh, Segment3d seg, float size)
        {
            Frame3f f = new Frame3f(seg.Center);

            f.AlignAxis(2, (Vector3f)seg.Direction);
            MeshEditor editor = new MeshEditor(mesh);

            editor.AppendBox(f, new Vector3f(size, size, seg.Extent));
        }
 protected DMesh3 MakeDebugGraphMesh()
 {
     DMesh3 graphMesh = new DMesh3();
     graphMesh.EnableVertexColors(Vector3f.One);
     foreach (int vid in Graph.VertexIndices()) {
         if (TipVertices.Contains(vid)) {
             MeshEditor.AppendBox(graphMesh, Graph.GetVertex(vid), 0.3f, Colorf.Green);
         } else if (TipBaseVertices.Contains(vid)) {
             MeshEditor.AppendBox(graphMesh, Graph.GetVertex(vid), 0.225f, Colorf.Magenta);
         } else if (GroundVertices.Contains(vid)) {
             MeshEditor.AppendBox(graphMesh, Graph.GetVertex(vid), 0.35f, Colorf.Blue);
         } else {
             MeshEditor.AppendBox(graphMesh, Graph.GetVertex(vid), 0.15f, Colorf.White);
         }
     }
     foreach (int eid in Graph.EdgeIndices()) {
         Segment3d seg = Graph.GetEdgeSegment(eid);
         MeshEditor.AppendLine(graphMesh, seg, 0.1f);
     }
     return graphMesh;
 }
Exemplo n.º 3
0
        public static void AppendBox(DMesh3 mesh, Vector3d pos, Vector3d normal, float size)
        {
            MeshEditor editor = new MeshEditor(mesh);

            editor.AppendBox(new Frame3f(pos, normal), size);
        }
Exemplo n.º 4
0
        public static void AppendBox(DMesh3 mesh, Frame3f frame, Vector3f size, Colorf color)
        {
            var editor = new MeshEditor(mesh);

            editor.AppendBox(frame, size, color);
        }
Exemplo n.º 5
0
        public static void AppendBox(DMesh3 mesh, Vector3d pos, Vector3d normal, float size, Colorf color)
        {
            var editor = new MeshEditor(mesh);

            editor.AppendBox(new Frame3f(pos, normal), size * Vector3f.One, color);
        }