mmult method
Matrix multiplication @param matrix Matrix to multiply with from left side.
Implementation
Mat3 mmult(Mat3 matrix, [Mat3? target]) {
target ??= Mat3();
final A = elements;
final B = matrix.elements;
final T = target.elements;
final a11 = A[0],
a12 = A[1],
a13 = A[2],
a21 = A[3],
a22 = A[4],
a23 = A[5],
a31 = A[6],
a32 = A[7],
a33 = A[8];
final b11 = B[0],
b12 = B[1],
b13 = B[2],
b21 = B[3],
b22 = B[4],
b23 = B[5],
b31 = B[6],
b32 = B[7],
b33 = B[8];
T[0] = a11 * b11 + a12 * b21 + a13 * b31;
T[1] = a11 * b12 + a12 * b22 + a13 * b32;
T[2] = a11 * b13 + a12 * b23 + a13 * b33;
T[3] = a21 * b11 + a22 * b21 + a23 * b31;
T[4] = a21 * b12 + a22 * b22 + a23 * b32;
T[5] = a21 * b13 + a22 * b23 + a23 * b33;
T[6] = a31 * b11 + a32 * b21 + a33 * b31;
T[7] = a31 * b12 + a32 * b22 + a33 * b32;
T[8] = a31 * b13 + a32 * b23 + a33 * b33;
return target;
}