public void Hull_of_Box3_with_empty_Box3_is_original_Box3() { var a = new Box3(minCorner: new Vector3(2.72, 3.14, 1.23), dimensions: new Vector3(1.0, 2.0, 3.0)); var c = Box3.Hull(a, Box3.Empty); ExpectAlmostEqualBoxes(a, c, _tolerance); c = Box3.Hull(Box3.Empty, a); ExpectAlmostEqualBoxes(a, c, _tolerance); }
public void Hull_of_two_Box3_is_correct() { var a = new Box3(minCorner: new Vector3(2.72, 3.14, 1.23), dimensions: new Vector3(1.0, 2.0, 3.0)); var b = new Box3(minCorner: new Vector3(3.5, 2.5, 3.21), dimensions: new Vector3(2.0, 1.5, 1.0)); var c = Box3.Hull(a, b); Expect(c.MinCorner.X, Is.EqualTo(2.72).Within(_tolerance)); Expect(c.MinCorner.Y, Is.EqualTo(2.5).Within(_tolerance)); Expect(c.MinCorner.Z, Is.EqualTo(1.23).Within(_tolerance)); Expect(c.MaxCorner.X, Is.EqualTo(5.5).Within(_tolerance)); Expect(c.MaxCorner.Y, Is.EqualTo(5.14).Within(_tolerance)); Expect(c.MaxCorner.Z, Is.EqualTo(4.23).Within(_tolerance)); }
public void Hull_of_a_sequence_of_Vector2_is_correct() { var points = new List <Vector3>() { new Vector3(2.72, 3.14, 1.0), new Vector3(3.72, 2.14, 0.1), new Vector3(4.72, 1.14, 2.0), new Vector3(4.02, 4.14, -1.0) }; var c = Box3.Hull(points); Expect(c.MinCorner.X, Is.EqualTo(2.72).Within(_tolerance)); Expect(c.MinCorner.Y, Is.EqualTo(1.14).Within(_tolerance)); Expect(c.MinCorner.Z, Is.EqualTo(-1.0).Within(_tolerance)); Expect(c.MaxCorner.X, Is.EqualTo(4.72).Within(_tolerance)); Expect(c.MaxCorner.Y, Is.EqualTo(4.14).Within(_tolerance)); Expect(c.MaxCorner.Z, Is.EqualTo(2.0).Within(_tolerance)); }