multiply function

List<double> multiply(
  1. List<double> out,
  2. List<double> a,
  3. List<double> b
)

Multiplies two mat2's

@param {mat2} out the receiving matrix @param {ReadonlyMat2} a the first operand @param {ReadonlyMat2} b the second operand @returns {mat2} out

Implementation

List<double> multiply(List<double> out, List<double> a, List<double> b) {
  final a0 = a[0], a1 = a[1], a2 = a[2], a3 = a[3];
  final b0 = b[0], b1 = b[1], b2 = b[2], b3 = b[3];
  out[0] = a0 * b0 + a2 * b1;
  out[1] = a1 * b0 + a3 * b1;
  out[2] = a0 * b2 + a2 * b3;
  out[3] = a1 * b2 + a3 * b3;
  return out;
}