Exemple #1
0
 public static IShape Create(IIntersectionService intersectionService, IDimensions dimensions)
 {
     return(dimensions switch
     {
         CubeDimensions cubeDimensions => new Cube(intersectionService, cubeDimensions),
         _ => null
     });
        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            CubeService wservice = new CubeService();

            Position       wpositionCubeA  = wservice.setCubePosition(Double.Parse(txtCoordXCubeA.Text), Double.Parse(txtCoordYCubeA.Text), Double.Parse(txtCoordZCubeA.Text));
            CubeDimensions wdimensionCubeA = wservice.setCubeDimensions(Double.Parse(txtHeightCubeA.Text), Double.Parse(txtLengthCubeA.Text), Double.Parse(txtWidthCubeA.Text));
            Cube           wcubeA          = new Cube(wpositionCubeA, wdimensionCubeA);

            Position       wpositionCubeB  = wservice.setCubePosition(Double.Parse(txtCoordXCubeB.Text), Double.Parse(txtCoordYCubeB.Text), Double.Parse(txtCoordZCubeB.Text));
            CubeDimensions wdimensionCubeB = wservice.setCubeDimensions(Double.Parse(txtHeightCubeB.Text), Double.Parse(txtLengthCubeB.Text), Double.Parse(txtWidthCubeB.Text));
            Cube           wcubeB          = new Cube(wpositionCubeB, wdimensionCubeB);
        }
        public void TestMethod1()
        {
            double HeightCubeA = 10.5;
            double LengthCubeA = 4.2;
            double WidthCubeA  = 22.7;

            double CoordXCubeA = 2;
            double CoordYCubeA = 2;
            double CoordZCubeA = 2;

            double HeightCubeB = 10.5;
            double LengthCubeB = 4.2;
            double WidthCubeB  = 22.7;

            double CoordXCubeB = 10;
            double CoordYCubeB = 10;
            double CoordZCubeB = 10;

            CubeService wservice = new CubeService();

            Position       wpositionCubeA  = wservice.setCubePosition(CoordXCubeA, CoordYCubeA, CoordZCubeA);
            CubeDimensions wdimensionCubeA = wservice.setCubeDimensions(HeightCubeA, LengthCubeA, WidthCubeA);
            Cube           wcubeA          = new Cube(wpositionCubeA, wdimensionCubeA);

            Console.WriteLine("Cube A");
            Console.WriteLine("Position(X: " + wcubeA.Position.CoordinateX.ToString() + ";Y: " + wcubeA.Position.CoordinateY.ToString() + ";Z: " + wcubeA.Position.CoordinateZ.ToString() + ")");
            Console.WriteLine("Dimensions(H: " + wcubeA.Dimensions.Height.ToString() + ";L: " + wcubeA.Dimensions.Length.ToString() + ";W: " + wcubeA.Dimensions.Width.ToString() + ")");

            Console.WriteLine("");

            Position       wpositionCubeB  = wservice.setCubePosition(CoordXCubeB, CoordYCubeB, CoordZCubeB);
            CubeDimensions wdimensionCubeB = wservice.setCubeDimensions(HeightCubeB, LengthCubeB, WidthCubeB);
            Cube           wcubeB          = new Cube(wpositionCubeB, wdimensionCubeB);

            Console.WriteLine("Cube B");
            Console.WriteLine("Position(X: " + wcubeB.Position.CoordinateX.ToString() + ";Y: " + wcubeB.Position.CoordinateY.ToString() + ";Z: " + wcubeB.Position.CoordinateZ.ToString() + ")");
            Console.WriteLine("Dimensions(H: " + wcubeB.Dimensions.Height.ToString() + ";L: " + wcubeB.Dimensions.Length.ToString() + ";W: " + wcubeB.Dimensions.Width.ToString() + ")");

            Console.WriteLine("");

            if (wservice.cubesCollide(wcubeA, wcubeB))
            {
                Console.WriteLine("The cubes Collide!");
            }
            else
            {
                Console.WriteLine("The cubes does not Collide!");
            }
        }
Exemple #4
0
        public void Create_A_New_Cube_When_Parameters_Are_Cube_Dimensions(float x, float y, float side)
        {
            //Arrange
            var cubeDimensions      = new CubeDimensions(new X(x), new Y(y), new Side(side));
            var intersectionService = Substitute.For <IIntersectionService>();

            //Act
            var cube = ShapeFactory.Create(intersectionService, cubeDimensions);

            //Assert
            cube.Should().BeOfType(typeof(Cube));
            ((Cube)cube).X.Value.Should().Be(x);
            ((Cube)cube).Y.Value.Should().Be(y);
            ((Cube)cube).Side.Value.Should().Be(side);
        }
Exemple #5
0
        public void Intersect_With_Another_Cube(float x1, float y1, float side1, float x2, float y2, float side2)
        {
            //Arrange
            var cubeDimensions1     = new CubeDimensions(new X(x1), new Y(y1), new Side(side1));
            var cubeDimensions2     = new CubeDimensions(new X(x2), new Y(y2), new Side(side2));
            var intersectionService = new IntersectionService();

            var cube1 = ShapeFactory.Create(intersectionService, cubeDimensions1);
            var cube2 = ShapeFactory.Create(intersectionService, cubeDimensions2);

            //Act
            var shapeIntersection = cube1.IntersectWith(cube2);

            //Assert
            shapeIntersection.ToString().Should().Be($"Intersection result of a Cube (X = {x1}, Y = {y1}, Side = {side1}) with a Cube (X = {x2}, Y = {y2}, Side = {side2})");
        }
        public void TestMethod1()
        {
            double height = 10.5;
            double length = 4.2;
            double width  = 22.7;

            double coordX = 2.5;
            double coordY = 1.2;
            double coordZ = 0.9;


            CubeDimensions wdimensions = new CubeDimensions(height, length, width);
            Position       wposition   = new Position(coordX, coordY, coordZ);
            Cube           wcube       = new Cube(wposition, wdimensions);

            Console.WriteLine("Position(X: " + wcube.Position.CoordinateX.ToString() + ";Y: " + wcube.Position.CoordinateY.ToString() + ";Z: " + wcube.Position.CoordinateZ.ToString() + ")");
            Console.WriteLine("Dimensions(H: " + wcube.Dimensions.Height.ToString() + ";L: " + wcube.Dimensions.Length.ToString() + ";W: " + wcube.Dimensions.Width.ToString() + ")");
        }
Exemple #7
0
            public PocketDimension(CubeStatus[][] values, CubeDimensions dimensions = CubeDimensions.Three)
            {
                _dimensions = dimensions;
                HashSet <(int, int, int, int)> map = new HashSet <(int, int, int, int)>();

                _sizeDimension = values.Length;

                for (var y = 0; y < values.Length; y++)
                {
                    for (var x = 0; x < values[y].Length; x++)
                    {
                        var value = values[y][x];
                        if (value == CubeStatus.Active)
                        {
                            map.Add((x, y, 0, 0));
                        }
                    }
                }

                _values = map;
            }
Exemple #8
0
        internal virtual void ToCube(Controls.Cube.RadarCube cube)
        {
            cube.frcDimensions    = Dimensions;
            Dimensions            = null;
            cube.Dimensions.FCube = cube;
            foreach (var d in cube.Dimensions)
            {
                d.FCube = cube;
            }

            cube.frcMeasures    = Measures;
            Measures            = null;
            cube.Measures.FCube = cube;
            foreach (var m in cube.Measures)
            {
                m.FCube = cube;
            }

            cube.FActive     = Active;
            cube.FLevelsList = LevelsList;
            LevelsList       = null;
        }
Exemple #9
0
        internal virtual void FromCube(Controls.Cube.RadarCube cube)
        {
            Dimensions         = cube.Dimensions;
            cube.frcDimensions = null;
            Dimensions.FCube   = null;
            foreach (var d in Dimensions)
            {
                d.FCube = null;
            }

            Measures         = cube.Measures;
            cube.frcMeasures = null;
            Measures.FCube   = null;
            foreach (var m in Measures)
            {
                m.FCube = null;
            }

            Active           = cube.FActive;
            LevelsList       = cube.FLevelsList;
            cube.FLevelsList = null;
            cube.FEngineList = null;
        }
        public CubeDimensions setCubeDimensions(double height, double length, double width)
        {
            CubeDimensions wcubedimensions = new CubeDimensions(height, length, width);

            return(wcubedimensions);
        }
 public void CreateCube(Position position, CubeDimensions dimensions)
 {
     Cube wcube = new Cube(position, dimensions);
 }
Exemple #12
0
 private static CubeDimensions CalculateNextRound(Dictionary <string, Pocket> current, Dictionary <string, Pocket> next, CubeDimensions cubeDimensions)
 {
     var nextCube = cubeDimensions with
     {
         topLeftFront = cubeDimensions.topLeftFront with
         {
             X = cubeDimensions.topLeftFront.X - 1,
             Y = cubeDimensions.topLeftFront.Y - 1,
             Z = cubeDimensions.topLeftFront.Z - 1,
         },