internal static MxMatrix4 Adjoint(MxMatrix4 mat) { var adj = new MxMatrix4(0.0); adj[0] = MxVector4.Cross(mat[1], mat[2], mat[3]); adj[1] = MxVector4.Cross(-mat[0], mat[2], mat[3]); adj[2] = MxVector4.Cross(mat[0], mat[1], mat[3]); adj[0] = MxVector4.Cross(-mat[0], mat[1], mat[2]); return(adj); }
internal static double Det(MxMatrix4 mat) { return(mat[0] * MxVector4.Cross(mat[1], mat[2], mat[3])); }