public static Matrix4X4 operator *(Matrix4X4 A, Matrix4X4 B) { Matrix4X4 Temp = new Matrix4X4(A); Temp.Multiply(B); return(Temp); }
public void PrepareInvMatrix(double Tx, double Ty, double Tz, double Rx, double Ry, double Rz, double Sx, double Sy, double Sz) { Matrix4X4 M0 = new Matrix4X4(); Matrix4X4 M1 = new Matrix4X4(); Matrix4X4 M2 = new Matrix4X4(); Matrix4X4 M3 = new Matrix4X4(); Matrix4X4 M4 = new Matrix4X4(); Matrix4X4 M5 = new Matrix4X4(); Matrix4X4 M6 = new Matrix4X4(); Matrix4X4 M7 = new Matrix4X4(); M0.Scale(Sx, Sy, Sz); M1.Rotate(0, Rx); M2.Rotate(1, Ry); M3.Rotate(2, Rz); M4.Translate(Tx, Ty, Tz); // 4 * 3 * 2 * 1 * 0 M5.Multiply(M4, M3); M6.Multiply(M5, M2); M7.Multiply(M6, M1); Multiply(M7, M0); }
public static Matrix4X4 operator *(Matrix4X4 A, Matrix4X4 B) { Matrix4X4 Temp = new Matrix4X4(A); Temp.Multiply(B); return Temp; }