This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
Note: This feature is available in Web Workers.
The rotateSelf() method of the 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 DOMMatrixReadOnly.rotate()
rotateSelf() rotateSelf(rotX) rotateSelf(rotX, rotY) rotateSelf(rotX, rotY, rotZ)
rotXA number; the x-coordinate of the vector denoting the axis of rotation
rotY OptionalA number; the y-coordinate of the vector denoting the axis of rotation.
rotZ OptionalA number; the z-coordinate of the vector denoting the axis of rotation
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)"
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
rotateSelf |
61 | 79 | 33 | 48 | 11 | 61 | 33 | 45 | 11 | 8.0 | 61 | 11 |
DOMMatrixReadOnly.rotate()transform propertyrotate property<transform-function> functions transform attributeCanvasRenderingContext2D interface methods
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/DOMMatrix/rotateSelf