GtkGL.Quaternion.ToTransMatrix C# (CSharp) Method

ToTransMatrix() public method

public ToTransMatrix ( ) : GtkGL.TransformationMatrix
return GtkGL.TransformationMatrix
        public GtkGL.TransformationMatrix ToTransMatrix()
        {
            double[] transMatrix = new double[16];

            transMatrix[4 * 0 + 0] = 1.0 - 2.0f * (y * y + z * z);
            transMatrix[4 * 0 + 1] = 2.0 * (x * y - z * w);
            transMatrix[4 * 0 + 2] = 2.0 * (z * x + y * w);

            transMatrix[4 * 1 + 0] = 2.0 * (x * y + z * w);
            transMatrix[4 * 1 + 1]= 1.0 - 2.0f * (z * z + x * x);
            transMatrix[4 * 1 + 2] = 2.0 * (y * z - x * w);

            transMatrix[4 * 2 + 0] = 2.0 * (z * x - y * w);
            transMatrix[4 * 2 + 1] = 2.0 * (y * z + x * w);
            transMatrix[4 * 2 + 2] = 1.0 - 2.0f * (y * y + x * x);

            transMatrix[3] = transMatrix[7] = transMatrix[11] =
            transMatrix[12] = transMatrix[13] = transMatrix[14] = 0.0;

            transMatrix[15] = 1.0;

            return new GtkGL.TransformationMatrix(transMatrix);
        }