Esempio n. 1
0
            public static CSGSceneTestFIle LoadTestFile(string file_name)
            {
                CSGSceneTestFIle res = null;

                if (File.Exists(file_name))
                {
                    Stream          strm         = File.OpenRead(file_name);
                    BinaryFormatter deserializer = new BinaryFormatter();
                    deserializer.Binder = new AllowAllAssemblyVersionsDeserializationBinder();
                    res = (CSGSceneTestFIle)deserializer.Deserialize(strm);
                    strm.Close();
                }
                return(res);
            }
Esempio n. 2
0
 void CompareGeometry(CSGSceneTestFIle tst, Vertex[] vertices, Edge[] edges)
 {
     Assert.AreEqual(tst.ResultVertices.Length, vertices.Length);
     Assert.AreEqual(tst.ResultEdges.Length, edges.Length);
     for (int vidx = 0; vidx < tst.ResultVertices.Length; vidx++ )
     {
         Assert.AreEqual(tst.ResultVertices[vidx].Pos, vertices[vidx].Pos);
     }
     for (int eidx = 0; eidx < tst.ResultEdges.Length; eidx++)
     {
         Assert.AreEqual(tst.ResultEdges[eidx].VertIndices[0], edges[eidx].VertIndices[0]);
         Assert.AreEqual(tst.ResultEdges[eidx].VertIndices[1], edges[eidx].VertIndices[1]);
     }
 }
Esempio n. 3
0
 void CompareGeometry(CSGSceneTestFIle tst, Vertex[] vertices, Edge[] edges)
 {
     Assert.AreEqual(tst.ResultVertices.Length, vertices.Length);
     Assert.AreEqual(tst.ResultEdges.Length, edges.Length);
     for (int vidx = 0; vidx < tst.ResultVertices.Length; vidx++)
     {
         Assert.AreEqual(tst.ResultVertices[vidx].Pos, vertices[vidx].Pos);
     }
     for (int eidx = 0; eidx < tst.ResultEdges.Length; eidx++)
     {
         Assert.AreEqual(tst.ResultEdges[eidx].VertIndices[0], edges[eidx].VertIndices[0]);
         Assert.AreEqual(tst.ResultEdges[eidx].VertIndices[1], edges[eidx].VertIndices[1]);
     }
 }
Esempio n. 4
0
            public void SaveTestFile(string file_name)
            {
                CSGSceneTestFIle file = new CSGSceneTestFIle();

                file.Scene = this;
                if (Root == null)
                {
                    Run();
                }
                Root.GetWeldedGeometry(out file.ResultVertices, out file.ResultEdges);
                Stream          strm       = File.Create(file_name);
                BinaryFormatter serializer = new BinaryFormatter();

                serializer.Serialize(strm, file);
                strm.Close();
            }
Esempio n. 5
0
        public void RunDefaultSceneTest(CSGScene scene, string filename)
        {
            string fullpath = @"C:\Users\chris\mmbot\convexcad\convexcad\Scenes\" + filename;

            if (File.Exists(fullpath))
            {
                CSGSceneTestFIle tst = CSGScene.LoadTestFile(fullpath);
                if (scene.Root == null)
                {
                    scene.Run();
                }
                Vertex[] vertices = null;
                Edge[]   edges    = null;
                scene.Root.GetWeldedGeometry(out vertices, out edges);
                CompareGeometry(tst, vertices, edges);
            }
            else
            {
                scene.SaveTestFile(fullpath);
            }
        }
Esempio n. 6
0
 public void SaveTestFile(string file_name)
 {
     CSGSceneTestFIle file = new CSGSceneTestFIle();
     file.Scene = this;
     if(Root == null)
         Run();
     Root.GetWeldedGeometry(out file.ResultVertices, out file.ResultEdges);
     Stream strm = File.Create(file_name);
     BinaryFormatter serializer = new BinaryFormatter();
     serializer.Serialize(strm, file);
     strm.Close();
 }