Ejemplo n.º 1
0
 /// <summary>
 ///     Converts to the equivalent domain model cube object
 /// </summary>
 /// <returns>
 ///     The equivalent domain model Cube object.
 /// </returns>
 public static Cube ToDomain(this Models.Cube cubeA)
 {
     return(new Cube(
                new Point3D(cubeA.CenterX, cubeA.CenterY, cubeA.CenterZ),
                cubeA.SizeX,
                cubeA.SizeY,
                cubeA.SizeZ));
 }
Ejemplo n.º 2
0
        public void CubesOverlapped_SameCenter()
        {
            Polygons.Models.Cube cubeA = new Models.Cube(1, 1, 1, 3);
            Polygons.Models.Cube cubeB = new Models.Cube(1, 1, 1, 3);

            bool result = Algebra.IsOverlapping(cubeA, cubeB);

            Assert.AreEqual(true, result);
        }
Ejemplo n.º 3
0
        public void CubesNOTOverlapped()
        {
            Polygons.Models.Cube cubeA = new Models.Cube(1, 1, 1, 3);
            Polygons.Models.Cube cubeB = new Models.Cube(5, 5, 5, 3);

            bool result = Algebra.IsOverlapping(cubeA, cubeB);

            Assert.AreEqual(false, result);
        }
        public void QueryCubeCaseOne()
        {
            var valueUpdate1 = 4;
            var valueUpdate2 = 23;

            Models.Cube cube = new Models.Cube();
            cube.GenerateCube(4);
            var coordenate1 = new ValueObjects.Coordenate()
            {
                X = 2, Y = 2, Z = 2
            };

            cube.Update(coordenate1, valueUpdate1);
            var coordenateQuery11 = new ValueObjects.Coordenate()
            {
                X = 1, Y = 1, Z = 1
            };
            var coordenateQuery12 = new ValueObjects.Coordenate()
            {
                X = 3, Y = 3, Z = 3
            };
            var valueResult1 = cube.Query(coordenateQuery11, coordenateQuery12);

            Assert.IsTrue(valueResult1 == valueUpdate1);
            var coordenate2 = new ValueObjects.Coordenate()
            {
                X = 1, Y = 1, Z = 1
            };

            cube.Update(coordenate2, valueUpdate2);
            var coordenateQuery21 = new ValueObjects.Coordenate()
            {
                X = 2, Y = 2, Z = 2
            };
            var coordenateQuery22 = new ValueObjects.Coordenate()
            {
                X = 4, Y = 4, Z = 4
            };
            var valueResult2 = cube.Query(coordenateQuery21, coordenateQuery22);

            Assert.IsTrue(valueResult2 == valueUpdate1);
            var valueResult3 = cube.Query(coordenateQuery11, coordenateQuery12);

            Assert.IsTrue(valueResult3 == valueUpdate2 + valueUpdate1);
        }
        public void UpdateCube()
        {
            var valueUpdate = 4;

            Models.Cube cube = new Models.Cube();
            cube.GenerateCube(2);
            var coordenate = new ValueObjects.Coordenate()
            {
                X = 2, Y = 2, Z = 2
            };

            cube.Update(coordenate, valueUpdate);
            if (cube.Nodes.TryGetValue(coordenate, out long value))
            {
                Assert.IsTrue(value == valueUpdate);
            }
            else
            {
                Assert.Fail();
            }
        }
        public void QueryCubeCaseTwo()
        {
            var valueUpdate = 1;

            Models.Cube cube = new Models.Cube();
            cube.GenerateCube(2);
            var coordenate1 = new ValueObjects.Coordenate()
            {
                X = 2, Y = 2, Z = 2
            };

            cube.Update(coordenate1, valueUpdate);
            var coordenateQuery11 = new ValueObjects.Coordenate()
            {
                X = 1, Y = 1, Z = 1
            };
            var coordenateQuery12 = new ValueObjects.Coordenate()
            {
                X = 1, Y = 1, Z = 1
            };
            var valueResult1 = cube.Query(coordenateQuery11, coordenateQuery12);

            Assert.IsTrue(valueResult1 == 0);
            var coordenateQuery21 = new ValueObjects.Coordenate()
            {
                X = 1, Y = 1, Z = 1
            };
            var coordenateQuery22 = new ValueObjects.Coordenate()
            {
                X = 2, Y = 2, Z = 2
            };
            var valueResult2 = cube.Query(coordenateQuery21, coordenateQuery22);

            Assert.IsTrue(valueResult2 == valueUpdate);
            var valueResult3 = cube.Query(coordenateQuery22, coordenateQuery22);

            Assert.IsTrue(valueResult3 == valueUpdate);
        }