public void ComputeBoundsForSelectedNodeGeometry_PointNodeSelected_BoundingBoxIsAroundPoint() { var pointA = InitializePointWithId("A"); var bounds = HelixWatch3DViewModel.ComputeBoundsForGeometry(new GeometryModel3D[] { pointA }); Assert.AreEqual(bounds, pointA.Bounds()); }
public void ComputeBoundsForSelectedNodeGeometry_MultiplePointNodesSelected_BoundingBoxIsCorrect() { var pointA = InitializePointWithId("A"); var pointB = InitializePointWithId("B", new Vector3(1000000, 1000000, 1000000)); var bounds = HelixWatch3DViewModel.ComputeBoundsForGeometry(new GeometryModel3D[] { pointA, pointB }); Assert.AreEqual(bounds.Minimum, pointA.Bounds().Minimum); Assert.AreEqual(bounds.Maximum, pointB.Bounds().Maximum); }
public void ComputeBoundsForSelectedNodeGeometry_OnePointOneCubeSelected_BoundingBoxIsCorrect() { var pointA = InitializePointWithId("A"); var builder = new MeshBuilder(); builder.AddBox(new Vector3(1000000, 1000000, 1000000), 5, 5, 5, BoxFaces.All); var boxGeom = builder.ToMeshGeometry3D(); var boxB = new MeshGeometryModel3D() { Geometry = boxGeom, Name = "B" }; var bounds = HelixWatch3DViewModel.ComputeBoundsForGeometry(new GeometryModel3D[] { pointA, boxB }); Assert.AreEqual(bounds.Minimum, pointA.Bounds().Minimum); Assert.AreEqual(bounds.Maximum, boxB.Bounds().Maximum); }
public void ComputeBoundsForSelectedNodeGeometry_NothingSelected_BoundingBoxAroundAllGeometry() { var bounds = HelixWatch3DViewModel.ComputeBoundsForGeometry(new GeometryModel3D[] { }); Assert.AreEqual(bounds, HelixWatch3DViewModel.DefaultBounds); }