Матрица вращения определяется как
[[cos(A), -sin(A)],
[sin(A), cos(A)]]
, где A
- угол. M11
в матрице IE - первый элемент первой строки; M12
: второй элемент первого ряда и т. Д.
JavaScripts Math.sin
и Math.cos
работают с радианами, поэтому вам придется превратить ваши градусы в радианы
radians = degrees * Math.PI / 180
Соединяя это вместе, мы получаем следующую функцию:
function rotationMatrix(degrees) {
var A = degrees * Math.PI / 180;
return [[Math.cos(A), -Math.sin(A)], [Math.sin(A), Math.cos(A)]]
}
Пример:
rotationMatrix(10)
// => [[0.984807753012208, -0.17364817766693033],
// [0.17364817766693033, 0.984807753012208]]