Esempio n. 1
0
        public void Exp4()
        {
            double   θ = 0.0;
            Vector3D v = new Vector3D(1.0, 2.0, 3.0);

            v.Normalize();

            QuaternionD q = new QuaternionD(0.0, θ * v);

            q.Exp();
            Assert.IsTrue(Numeric.AreEqual(1, q.W));
            Assert.IsTrue(Vector3D.AreNumericallyEqual(Vector3D.Zero, q.V));
        }
Esempio n. 2
0
        public void Exp2()
        {
            double   θ = -0.3;
            Vector3D v = new Vector3D(1.0, 2.0, 3.0);

            v.Normalize();

            QuaternionD q = new QuaternionD(0.0, θ * v);

            q.Exp();
            Assert.IsTrue(Numeric.AreEqual((double)Math.Cos(θ), q.W));
            Assert.IsTrue(Vector3D.AreNumericallyEqual((double)Math.Sin(θ) * v, q.V));
        }
Esempio n. 3
0
        public void Exp4()
        {
            double θ = 0.0;
              Vector3D v = new Vector3D(1.0, 2.0, 3.0);
              v.Normalize();

              QuaternionD q = new QuaternionD(0.0, θ * v);
              q.Exp();
              Assert.IsTrue(Numeric.AreEqual(1, q.W));
              Assert.IsTrue(Vector3D.AreNumericallyEqual(Vector3D.Zero, q.V));
        }
Esempio n. 4
0
        public void Exp2()
        {
            double θ = -0.3;
              Vector3D v = new Vector3D(1.0, 2.0, 3.0);
              v.Normalize();

              QuaternionD q = new QuaternionD(0.0, θ * v);
              q.Exp();
              Assert.IsTrue(Numeric.AreEqual((double)Math.Cos(θ), q.W));
              Assert.IsTrue(Vector3D.AreNumericallyEqual((double)Math.Sin(θ) * v, q.V));
        }