Vector3 absoluteRotate(Vector3 arg)

Rotates arg by the absolute rotation of this Returns arg. Primarily used by AABB transformation code.

Source

Vector3 absoluteRotate(Vector3 arg) {
  double m00 = _m4storage[0].abs();
  double m01 = _m4storage[4].abs();
  double m02 = _m4storage[8].abs();
  double m10 = _m4storage[1].abs();
  double m11 = _m4storage[5].abs();
  double m12 = _m4storage[9].abs();
  double m20 = _m4storage[2].abs();
  double m21 = _m4storage[6].abs();
  double m22 = _m4storage[10].abs();
  final argStorage = arg._v3storage;
  double x = argStorage[0];
  double y = argStorage[1];
  double z = argStorage[2];
  argStorage[0] = x * m00 + y * m01 + z * m02 + 0.0 * 0.0;
  argStorage[1] = x * m10 + y * m11 + z * m12 + 0.0 * 0.0;
  argStorage[2] = x * m20 + y * m21 + z * m22 + 0.0 * 0.0;
  return arg;
}