Esempio n. 1
0
        private void TestTransforms()
        {
            var trans1 = (Matrix4d)Matrix4.FromTranslation(new Vector3(3, 3, 0));
            var trans2 = (Matrix4d)Matrix4.FromTranslation(new Vector3(-1, 0, 0));
            var trans3 = trans2 * trans1;

            var trans1Inv = trans1.Inverted();

            Matrix4d testTrans = trans3 * trans1.Inverted();

            if (testTrans.Equals(trans2))
            {
                Debug.WriteLine("YAY! 1");
            }

            testTrans = trans1.Inverted() * trans3;
            if (testTrans.Equals(trans2))
            {
                Debug.WriteLine("YAY! 2");
            }

            testTrans = trans3.Inverted() * trans1;
            if (testTrans.Equals(trans2))
            {
                Debug.WriteLine("YAY! 3");
            }

            testTrans = trans1 * trans3.Inverted();
            if (testTrans.Equals(trans2))
            {
                Debug.WriteLine("YAY! 4");
            }
        }