Пример #1
0
        private void Start()
        {
            IntegrationTestManager testManager = new IntegrationTestManager();
            Mesh mesh = testManager.mesh;

            testManager.Assert(mesh.materials.GetMaterials().Count == 0);
            testManager.CreateBox();

            testManager.Assert(mesh.vertices.vertices.Count == 8);
            testManager.Assert(mesh.triangles.triangles.Count == 12 * 3);
            testManager.Assert(mesh.triangles.triangleInstances.Count == 12);
            testManager.Assert(mesh.materials.GetMaterials().Count == 1);
            testManager.Assert(mesh.materials.GetTriangleIndexMaterialIndex().Count == 12);

            testManager.DeleteTriangle();

            testManager.Assert(mesh.vertices.vertices.Count == 8);
            testManager.Assert(mesh.triangles.triangles.Count == 11 * 3);
            testManager.Assert(mesh.triangles.triangleInstances.Count == 11);
            testManager.Assert(mesh.materials.GetMaterials().Count == 1);
            testManager.Assert(mesh.materials.GetTriangleIndexMaterialIndex().Count == 11);

            testManager.SelectLastQuad();

            testManager.Assert(mesh.selection.selectedVertices.Count == 4);
            testManager.Assert(mesh.selection.selectedTriangles.Count == 1);

            testManager.Copy();
            testManager.Paste();

            testManager.Assert(mesh.selection.selectedVertices.Count == 4);
            testManager.Assert(mesh.selection.selectedTriangles.Count == 1);

            testManager.Assert(mesh.vertices.vertices.Count == 12);
            testManager.Assert(mesh.triangles.triangles.Count == 12 * 3);
            testManager.Assert(mesh.triangles.triangleInstances.Count == 12);
            testManager.Assert(mesh.materials.GetMaterials().Count == 1);
            testManager.Assert(mesh.materials.GetTriangleIndexMaterialIndex().Count == 12);

            testManager.DeleteSelection();

            testManager.Assert(mesh.vertices.vertices.Count == 8);
            testManager.Assert(mesh.triangles.triangles.Count == 11 * 3);
            testManager.Assert(mesh.triangles.triangleInstances.Count == 11);
            testManager.Assert(mesh.materials.GetMaterials().Count == 1);
            testManager.Assert(mesh.materials.GetTriangleIndexMaterialIndex().Count == 11);

            testManager.SelectAll();
            testManager.DeleteSelection();

            testManager.Assert(mesh.vertices.vertices.Count == 0);
            testManager.Assert(mesh.triangles.triangles.Count == 0);
            testManager.Assert(mesh.triangles.triangleInstances.Count == 0);
            testManager.Assert(mesh.materials.GetMaterials().Count == 1);
            testManager.Assert(mesh.materials.GetTriangleIndexMaterialIndex().Count == 0);

            IntegrationTest.Pass(gameObject);
        }
Пример #2
0
        private void Start()
        {
            IntegrationTestManager testManager = new IntegrationTestManager();
            Mesh mesh = testManager.mesh;

            Color color1 = new Color(0.9019608f, 0, 1, 0);
            Color color2 = new Color(0.9019607f, 0, 1, 0);

            testManager.Assert(mesh.materials.FindOrCreateMaterialIndexByColor(color1) == 0);
            testManager.Assert(mesh.materials.FindOrCreateMaterialIndexByColor(color2) == 1);

            IntegrationTest.Pass(gameObject);
        }
Пример #3
0
        private void Start()
        {
            IntegrationTestManager testManager = new IntegrationTestManager();
            Mesh mesh = testManager.mesh;

            // OBJ with UVs
            mesh.persistence.Load("test_files/vive_teleporter");
            testManager.Assert(mesh.vertices.vertices.Count == 101);
            testManager.Assert(mesh.triangles.triangles.Count == 336);
            testManager.Assert(mesh.materials.MaterialNames().Count == 112);
            testManager.Assert(mesh.materials.GetMaterials().Count == 4);

            mesh.vertices.BuildVertices();
            mesh.triangles.BuildTriangles();

            testManager.Assert(mesh.uMesh.uv.Length == 101);

            testManager.CreateBox();

            testManager.Assert(mesh.vertices.vertices.Count == 109);
            testManager.Assert(mesh.triangles.triangles.Count == 372);
            testManager.Assert(mesh.triangles.triangleInstances.Count == 124);
            testManager.Assert(mesh.materials.GetMaterials().Count == 5);
            testManager.Assert(mesh.materials.GetTriangleIndexMaterialIndex().Count == 124);

            mesh.persistence.Save("Temp/test.obj");

            ImportObj importObj = new ImportObj();

            importObj.Load("Temp/test.obj");
            testManager.Assert(importObj.vertices.Count == 109);
            testManager.Assert(importObj.uvs.Count == 109);
            testManager.Assert(importObj.triangles.Count == 372);
            testManager.Assert(importObj.materialNames.Count == 124);
            testManager.Assert(importObj.materials.Count == 5);

            testManager.Assert(File.Exists("Temp/test.obj"));
            File.Delete("Temp/test.obj");
            testManager.Assert(File.Exists("Temp/test.mtl"));
            File.Delete("Temp/test.mtl");

            IntegrationTest.Pass(gameObject);
        }
Пример #4
0
        private void Start()
        {
            IntegrationTestManager testManager = new IntegrationTestManager();
            Mesh    mesh   = testManager.mesh;
            Vector3 offset = new Vector3(0, 2, 0);

            Vector3    topPosition = new Vector3(0, 0, 0.25f);
            GameObject topVertex   = testManager.CreateVertex(topPosition + offset);

            Vector3    topLeftPosition = new Vector3(-0.25f, 0, 0.15f);
            GameObject topLeftVertex   = testManager.CreateVertex(topLeftPosition + offset);

            Vector3    middlePosition = Vector3.zero;
            GameObject middleVertex   = testManager.CreateVertex(middlePosition + offset);

            Vector3    bottomPosition = new Vector3(0, 0, -0.25f);
            GameObject bottomVertex   = testManager.CreateVertex(bottomPosition + offset);

            Vector3    bottomLeftPosition = new Vector3(-0.25f, 0, -0.15f);
            GameObject bottomLeftVertex   = testManager.CreateVertex(bottomLeftPosition + offset);

            mesh.triangles.AddTriangleByVertices(bottomLeftVertex, middleVertex, bottomVertex);
            mesh.triangles.AddTriangleByVertices(topLeftVertex, topVertex, middleVertex);

            testManager.Assert(mesh.vertices.vertices.Count == 5);
            testManager.Assert(mesh.triangles.triangles.Count == 2 * 3);
            testManager.Assert(mesh.triangles.triangleInstances.Count == 2);
            testManager.Assert(mesh.materials.GetMaterials().Count == 1);
            testManager.Assert(mesh.materials.GetTriangleIndexMaterialIndex().Count == 2);

            mesh.selection.SelectVertex(bottomLeftVertex);
            mesh.selection.SelectVertex(topLeftVertex);

            mesh.vertices.MergeSelected();

            testManager.Assert(mesh.vertices.vertices.Count == 4);
            testManager.Assert(mesh.triangles.triangles.Count == 2 * 3);
            testManager.Assert(mesh.triangles.triangleInstances.Count == 2);
            testManager.Assert(mesh.materials.GetMaterials().Count == 1);
            testManager.Assert(mesh.materials.GetTriangleIndexMaterialIndex().Count == 2);

            IntegrationTest.Pass(gameObject);
        }
Пример #5
0
        private void Start()
        {
            IntegrationTestManager testManager = new IntegrationTestManager();
            //MeshController meshController = testManager.meshController;

            ImportObj importObj = new ImportObj();

            importObj.Load("test_files/vive_teleporter.obj");
            testManager.Assert(importObj.vertices.Count == 101);
            testManager.Assert(importObj.uvs.Count == 101);
            testManager.Assert(importObj.triangles.Count == 336);
            testManager.Assert(importObj.materialNames.Count == 112);
            testManager.Assert(importObj.materials.Count == 4);

            importObj.Clear();
            importObj.Load("test_files/pikachu.obj");
            testManager.Assert(importObj.vertices.Count == 208);
            testManager.Assert(importObj.uvs.Count == 0);
            testManager.Assert(importObj.triangles.Count == 412 * 3);
            testManager.Assert(importObj.materialNames.Count == 412);
            testManager.Assert(importObj.materials.Count == 2);

            IntegrationTest.Pass(gameObject);
        }
        private void Start()
        {
            IntegrationTestManager testManager = new IntegrationTestManager();
            Mesh mesh = testManager.mesh;

            // ------------------
            // OBJ with UVs
            // ------------------
            mesh.persistence.Load("test_files/vive_teleporter");
            testManager.Assert(mesh.vertices.vertices.Count == 101);
            testManager.Assert(mesh.triangles.triangles.Count == 336);
            testManager.Assert(mesh.materials.MaterialNames().Count == 112);
            testManager.Assert(mesh.materials.GetMaterials().Count == 4);

            mesh.vertices.BuildVertices();
            mesh.triangles.BuildTriangles();

            testManager.Assert(mesh.uMesh.uv.Length == 101);

            mesh.persistence.Save("Temp/test.obj");

            ImportObj importObj = new ImportObj();

            importObj.Load("Temp/test.obj");
            testManager.Assert(importObj.vertices.Count == 101);
            testManager.Assert(importObj.uvs.Count == 101);
            testManager.Assert(importObj.triangles.Count == 336);
            testManager.Assert(importObj.materialNames.Count == 112);
            testManager.Assert(importObj.materials.Count == 4);

            testManager.Assert(File.Exists("Temp/test.obj"));
            File.Delete("Temp/test.obj");
            testManager.Assert(File.Exists("Temp/test.mtl"));
            File.Delete("Temp/test.mtl");

            testManager.Clear();
            importObj.Clear();

            // ------------------
            // OBJ without UVs
            // ------------------
            mesh.persistence.Load("test_files/pikachu");
            testManager.Assert(mesh.vertices.vertices.Count == 208);
            testManager.Assert(mesh.triangles.triangles.Count == 412 * 3);
            testManager.Assert(mesh.materials.MaterialNames().Count == 412);
            testManager.Assert(mesh.materials.GetMaterials().Count == 2);

            mesh.vertices.BuildVertices();
            mesh.triangles.BuildTriangles();

            testManager.Assert(mesh.uMesh.uv.Length == 208);

            mesh.persistence.Save("Temp/test.obj");

            importObj.Load("Temp/test.obj");
            testManager.Assert(importObj.vertices.Count == 208);
            testManager.Assert(importObj.uvs.Count == 208);
            testManager.Assert(importObj.triangles.Count == 412 * 3);
            testManager.Assert(importObj.materialNames.Count == 412);
            testManager.Assert(importObj.materials.Count == 2);

            testManager.Assert(File.Exists("Temp/test.obj"));
            File.Delete("Temp/test.obj");
            testManager.Assert(File.Exists("Temp/test.mtl"));
            File.Delete("Temp/test.mtl");

            IntegrationTest.Pass(gameObject);
        }
Пример #7
0
        private void Start()
        {
            IntegrationTestManager testManager = new IntegrationTestManager();
            Mesh mesh = testManager.mesh;

            testManager.Assert(mesh.materials.GetMaterials().Count == 0);
            testManager.CreateBox();

            testManager.Assert(mesh.vertices.vertices.Count == 8);
            testManager.Assert(mesh.triangles.triangles.Count == 12 * 3);
            testManager.Assert(mesh.triangles.triangleInstances.Count == 12);
            testManager.Assert(mesh.materials.GetMaterials().Count == 1);
            testManager.Assert(mesh.materials.GetTriangleIndexMaterialIndex().Count == 12);

            Color testColor = testManager.RandomFillColor();
            Color fillColor = Settings.fillColor;

            Triangle triangle = testManager.GetLastTriangle();

            testManager.FillTriangle(triangle, testColor);

            Triangle filledTriangle      = mesh.triangles.triangleInstances[3];
            Color    filledTriangleColor = testManager.GetColorOfTriangle(filledTriangle);

            testManager.Assert(testManager.SameColor(filledTriangleColor, testColor));

            testManager.Assert(mesh.vertices.vertices.Count == 8);
            testManager.Assert(mesh.triangles.triangles.Count == 12 * 3);
            testManager.Assert(mesh.triangles.triangleInstances.Count == 12);
            testManager.Assert(mesh.materials.GetMaterials().Count == 2);
            testManager.Assert(mesh.materials.GetTriangleIndexMaterialIndex().Count == 12);

            testManager.SelectLastQuad();

            testManager.Assert(mesh.selection.selectedVertices.Count == 4);
            testManager.Assert(mesh.selection.selectedTriangles.Count == 2);

            Color newFillColor = testManager.RandomFillColor();

            Settings.fillColor = newFillColor;

            testManager.Extrude();

            Settings.fillColor = fillColor;

            testManager.Assert(mesh.triangles.triangles.Count == 22 * 3);
            testManager.Assert(mesh.triangles.triangleInstances.Count == 22);

            testManager.Assert(mesh.selection.selectedVertices.Count == 4);
            testManager.Assert(mesh.selection.selectedTriangles.Count == 2);
            testManager.Assert(mesh.materials.GetMaterials().Count == 2);
            testManager.Assert(mesh.materials.GetTriangleIndexMaterialIndex().Count == 22);

            mesh.selection.Clear();

            Triangle extrudedTriangle      = mesh.triangles.triangleInstances[13];
            Color    extrudedTriangleColor = testManager.GetColorOfTriangle(extrudedTriangle);

            testManager.Assert(testManager.SameColor(extrudedTriangleColor, testColor));

            Triangle lastTriangle      = mesh.triangles.triangleInstances[21];
            Color    lastTriangleColor = testManager.GetColorOfTriangle(lastTriangle);

            testManager.Assert(testManager.SameColor(lastTriangleColor, testColor));

            Triangle secondExtrudedTriangle      = mesh.triangles.triangleInstances[14];
            Color    secondExtrudedTriangleColor = testManager.GetColorOfTriangle(secondExtrudedTriangle);

            testManager.Assert(testManager.SameColor(secondExtrudedTriangleColor, fillColor));

            testManager.SelectAll();
            testManager.DeleteSelection();

            testManager.Assert(mesh.vertices.vertices.Count == 0);
            testManager.Assert(mesh.triangles.triangles.Count == 0);
            testManager.Assert(mesh.triangles.triangleInstances.Count == 0);
            testManager.Assert(mesh.materials.GetMaterials().Count == 2);
            testManager.Assert(mesh.materials.GetTriangleIndexMaterialIndex().Count == 0);

            IntegrationTest.Pass(gameObject);
        }