public void Clone() { PerspectiveViewVolume perspectiveViewVolume = new PerspectiveViewVolume(1.23f, 2.13f, 1.01f, 10.345f); PerspectiveViewVolume clone = perspectiveViewVolume.Clone() as PerspectiveViewVolume; Assert.IsNotNull(clone); Assert.AreEqual(perspectiveViewVolume.Left, clone.Left); Assert.AreEqual(perspectiveViewVolume.Right, clone.Right); Assert.AreEqual(perspectiveViewVolume.Bottom, clone.Bottom); Assert.AreEqual(perspectiveViewVolume.Top, clone.Top); Assert.AreEqual(perspectiveViewVolume.Near, clone.Near); Assert.AreEqual(perspectiveViewVolume.Far, clone.Far); Assert.AreEqual(perspectiveViewVolume.FieldOfViewX, clone.FieldOfViewX); Assert.AreEqual(perspectiveViewVolume.FieldOfViewY, clone.FieldOfViewY); Assert.AreEqual(perspectiveViewVolume.GetAabb(Pose.Identity).Minimum, clone.GetAabb(Pose.Identity).Minimum); Assert.AreEqual(perspectiveViewVolume.GetAabb(Pose.Identity).Maximum, clone.GetAabb(Pose.Identity).Maximum); }
public void AabbTest() { PerspectiveViewVolume frustum = new PerspectiveViewVolume(); frustum.Set(-1, 1, -1, 1, 2, 5); Aabb aabb = frustum.GetAabb(Pose.Identity); Assert.AreEqual(new Vector3F(-2.5f, -2.5f, -5), aabb.Minimum); Assert.AreEqual(new Vector3F(2.5f, 2.5f, -2), aabb.Maximum); frustum.Set(0, 2, 0, 2, 1, 5); aabb = frustum.GetAabb(Pose.Identity); Assert.AreEqual(new Vector3F(0f, 0, -5), aabb.Minimum); Assert.AreEqual(new Vector3F(10, 10, -1), aabb.Maximum); frustum.Set(1, 2, 1, 2, 1, 5); aabb = frustum.GetAabb(Pose.Identity); Assert.AreEqual(new Vector3F(1, 1, -5), aabb.Minimum); Assert.AreEqual(new Vector3F(10, 10, -1), aabb.Maximum); }