public void LineRotationTest() { Matrix3d r = Matrix3d.RotationMatrix(new Vector3d(1, 1, 1), 2 * PI / 3); Coord3d coord = new Coord3d(new Point3d(3, 2, 1), r); Point3d p = new Point3d(5, 0, 2, coord); Line3d l = new Line3d(new Point3d(4, 1, 2), new Vector3d(1, 2, 6)); Assert.IsTrue(l.Rotate(r, p).Rotate(r, p).Rotate(r, p) == l); Rotation q = new Rotation(new Vector3d(1, 1, 1), 2 * PI / 3); Assert.IsTrue(l.Rotate(q, p).Rotate(q, p).Rotate(q, p) == l); }