Skip to content

Instantly share code, notes, and snippets.

@corbanbrook
Created October 12, 2016 16:48
Show Gist options
  • Save corbanbrook/5a2da0bf56059bd6f507f10c64870323 to your computer and use it in GitHub Desktop.
Save corbanbrook/5a2da0bf56059bd6f507f10c64870323 to your computer and use it in GitHub Desktop.
// 1.3.7
mat2.rotate = function (mat, angle, dest) {
if (!dest) { dest = mat; }
var a11 = mat[0],
a12 = mat[1],
a21 = mat[2],
a22 = mat[3],
s = Math.sin(angle),
c = Math.cos(angle);
dest[0] = a11 * c + a12 * s;
dest[1] = a11 * -s + a12 * c;
dest[2] = a21 * c + a22 * s;
dest[3] = a21 * -s + a22 * c;
return dest;
};
// 2+
mat2.rotate = function (out, a, rad) {
var a0 = a[0], a1 = a[1], a2 = a[2], a3 = a[3],
s = Math.sin(rad),
c = Math.cos(rad);
out[0] = a0 * c + a2 * s;
out[1] = a1 * c + a3 * s;
out[2] = a0 * -s + a2 * c;
out[3] = a1 * -s + a3 * c;
return out;
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment