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!"); } }
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); }
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() + ")"); }
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; }
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; }
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); }
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, },