Abacus.SinglePrecision.Matrix44Tests.TestStaticFn_CreateFromQuaternion_i C# (CSharp) Метод

TestStaticFn_CreateFromQuaternion_i() приватный Метод

private TestStaticFn_CreateFromQuaternion_i ( ) : void
Результат void
        public void TestStaticFn_CreateFromQuaternion_i ()
        {
            Single yaw; Maths.Pi(out yaw); yaw /= (Single) 4;
            Single pitch; Maths.Pi(out pitch); pitch /= (Single) (-8);
            Single roll; Maths.Pi(out roll); roll /= (Single) 2;

            Quaternion q; Quaternion.CreateFromYawPitchRoll(ref yaw, ref pitch, ref roll, out q);
            q.Normalise();

            Matrix44 m; Matrix44.CreateFromQuaternion(ref q, out m);

            Matrix44 expected = new Matrix44 ();
            expected.R0C0 = (Single) (-0.270598);
            expected.R0C1 = (Single) 0.9238795;
            expected.R0C2 = (Single) (-0.270598);
            expected.R0C3 = 0;

            expected.R1C0 = (Single) (-0.7071067);
            expected.R1C1 = 0;
            expected.R1C2 = (Single) 0.7071067;
            expected.R1C3 = 0;

            expected.R2C0 = (Single) 0.6532815;
            expected.R2C1 = (Single) 0.3826834;
            expected.R2C2 = (Single) 0.6532815;
            expected.R2C3 = 0;

            expected.R3C0 = 0;
            expected.R3C1 = 0;
            expected.R3C2 = 0;
            expected.R3C3 = 1;

            AssertEqualWithinReason (m, expected);
        }
Matrix44Tests