public void RotateZAngleMinus180Grad() { var r = new Rotate3D(-Math.PI, new[] { 0, 0, 1.0 }); var ptSrc = new Point3D(1.0, 2.0, 3.0); var ptDest = r.Rotate(ptSrc); Math.Round((ptDest.X ?? throw new ArgumentException()), 5).Should().Be(-1.0); Math.Round((ptDest.Y ?? throw new ArgumentException()), 5).Should().Be(-2.0); (ptDest.Z ?? throw new ArgumentException()).Should().Be(3.0); }
public void RotateXAngle90Grad() { var r = new Rotate3D(Math.PI / 2.0, new[] { 1.0, 0, 0 }); var ptSrc = new Point3D(1.0, 2.0, 3.0); var ptDest = r.Rotate(ptSrc); Math.Round((ptDest.X ?? throw new ArgumentException()), 5).Should().Be(1.0); Math.Round((ptDest.Y ?? throw new ArgumentException()), 5).Should().Be(-3.0); Math.Round((ptDest.Z ?? throw new ArgumentException()), 5).Should().Be(2.0); }
public void NoRotateAngle0() { var r = new Rotate3D(); var ptSrc = new Point3D(1.0, 2.0, 3.0); var ptDest = r.Rotate(ptSrc); (ptDest.X ?? throw new ArgumentException()).Should().Be(1.0); (ptDest.Y ?? throw new ArgumentException()).Should().Be(2.0); (ptDest.Z ?? throw new ArgumentException()).Should().Be(3.0); }
public void RotateXyzAngle90Grad() { var r = new Rotate3D(Math.PI / 2.0, new[] { 1.0, 1.0, 1.0 }); var ptSrc = new Point3D(1.0, 2.0, 3.0); var ptDest = r.Rotate(ptSrc); Math.Round((ptDest.X ?? throw new ArgumentException()), 10).Should().Be(Math.Round(-2.2200846792814621, 10)); Math.Round((ptDest.Y ?? throw new ArgumentException()), 10).Should().Be(Math.Round(-1.8213672050459184, 10)); Math.Round((ptDest.Z ?? throw new ArgumentException()), 10).Should().Be(Math.Round(2.3987174742355446, 10)); }
public void RotateXAngle90Grad() { var r = new Rotate3D(Math.PI / 2.0, new [] { 1.0, 0, 0 }); var ptSrc = new Point3D(1.0, 2.0, 3.0); var ptDest = r.Rotate(ptSrc); Assert.AreEqual(1.0, Math.Round((ptDest.X ?? throw new ArgumentException()), 5)); Assert.AreEqual(-3.0, Math.Round((ptDest.Y ?? throw new ArgumentException()), 5)); Assert.AreEqual(2.0, Math.Round((ptDest.Z ?? throw new ArgumentException()), 5)); }
public void RotateZAngleMinus180Grad() { var r = new Rotate3D(-Math.PI, new [] { 0, 0, 1.0 }); var ptSrc = new Point3D(1.0, 2.0, 3.0); var ptDest = r.Rotate(ptSrc); Assert.AreEqual(-1.0, Math.Round((ptDest.X ?? throw new ArgumentException()), 5)); Assert.AreEqual(-2.0, Math.Round((ptDest.Y ?? throw new ArgumentException()), 5)); Assert.AreEqual(3.0, (ptDest.Z ?? throw new ArgumentException())); }
public void RotateXyzAngle90GradAndBack() { var r1 = new Rotate3D(Math.PI / 2.0, new[] { 1.0, 1.0, 1.0 }); var r2 = new Rotate3D(-Math.PI / 2.0, new[] { 1.0, 1.0, 1.0 }); var ptSrc = new Point3D(1.0, 2.0, 3.0); var ptRot = r1.Rotate(ptSrc); var ptDest = r2.Rotate(ptRot); Math.Round((ptDest.X ?? throw new ArgumentException()), 10).Should().Be(1.0); Math.Round((ptDest.Y ?? throw new ArgumentException()), 10).Should().Be(2.0); Math.Round((ptDest.Z ?? throw new ArgumentException()), 10).Should().Be(3.0); }
public GCodeBitmapDraw() { Rotate = new Rotate3D(); }