files/en-us/web/api/dommatrix/rotateself/index.md
{{APIRef("Geometry Interfaces")}}{{AvailableInWorkers}}
The rotateSelf() method of the {{domxref("DOMMatrix")}} interface is a mutable transformation method that modifies a matrix. It rotates the source matrix around each of its axes by the specified number of degrees and returns the rotated matrix.
To rotate a matrix without mutating it, see {{domxref("DOMMatrixReadOnly.rotate()")}}
rotateSelf()
rotateSelf(rotX)
rotateSelf(rotX, rotY)
rotateSelf(rotX, rotY, rotZ)
rotX
rotY {{optional_inline}}
rotZ {{optional_inline}}
If only one parameter is passed, rotZ is the value of rotX, and both rotX and rotY are 0, and the rotation is a 2D rotation. If rotX and rotY are non-zero, the is2D is false.
Returns itself; the DOMMatrix rotated by the given
vectors.
const matrix = new DOMMatrix(); // create a matrix
console.log(matrix.toString()); // output: "matrix(1, 0, 0, 1, 0, 0)"
matrix.rotateSelf(30); // mutate it
console.log(matrix); // output: "matrix(0.866, 0.5, -0.5, 0.866, 0, 0)"
{{Specifications}}
{{Compat}}
transform attribute