public void RayDistanceToRayTest() { Ray3d r1 = new Ray3d(new Point3d(0, 0, 0), new Vector3d(1, 0, 0)); Ray3d r2 = new Ray3d(new Point3d(5, 0, 5), new Vector3d(-1, 0, 0)); Assert.IsTrue(Abs(r1.DistanceTo(r2) - 5) < GeometRi3D.Tolerance); r2 = new Ray3d(new Point3d(5, -5, 5), new Vector3d(0, 1, 0)); Assert.IsTrue(Abs(r1.DistanceTo(r2) - 5) < GeometRi3D.Tolerance); r2 = new Ray3d(new Point3d(-5, 0, 5), new Vector3d(0, 1, 1)); Assert.IsTrue(Abs(r1.DistanceTo(r2) - Sqrt(50)) < GeometRi3D.Tolerance); }
public void RayDistanceToCrossingLineTest2() { Line3d l = new Line3d(new Point3d(0, 0, 0), new Vector3d(1, 0, 0)); Ray3d r = new Ray3d(new Point3d(2, 4, 3), new Vector3d(0, 1, 0)); Assert.IsTrue(Abs(r.DistanceTo(l) - 5) < GeometRi3D.Tolerance); }