diff --git a/test/tests/modelutils_test.js b/test/tests/modelutils_test.js index ac6da69..4682f5c 100644 --- a/test/tests/modelutils_test.js +++ b/test/tests/modelutils_test.js @@ -163,4 +163,10 @@ describe ('Model Utils', function () { assert.strictEqual (topology.edges[i].triangles.length, 2); } }); + + it ('Two Cubes Connection in One Edge Topology Calculation', function () { + const model = testUtils.GetTwoCubesConnectingInOneEdgeModel (); + let topology = OV.GetTopology (model); + assert.strictEqual (topology.vertices.length, 14); + }); }); diff --git a/test/utils/testutils.js b/test/utils/testutils.js index c0bd063..8158ec6 100644 --- a/test/utils/testutils.js +++ b/test/utils/testutils.js @@ -163,6 +163,23 @@ module.exports = return cube; }, + GetTwoCubesConnectingInOneEdgeModel () + { + let model = new OV.Model (); + + let cube1 = this.GetCubeMesh (); + model.AddMesh (cube1); + + let cube2 = this.GetCubeMesh (); + let matrix = new OV.Matrix ().CreateTranslation (1.0, 0.0, 1.0); + let transformation = new OV.Transformation (matrix); + OV.TransformMesh (cube2, transformation); + model.AddMesh (cube2); + + OV.FinalizeModel (model, function () { new OV.Material () }); + return model; + }, + GetCubeWithOneMissingFaceMesh () { var cube = new OV.Mesh ();