The DOMMatrixReadOnly
interface represents 4x4 matrices, suitable for 2D and 3D operations. If this interface defines only read-only matrices, the DOMMatrix
interface which inherits from it, add all the properties and the methods to allow to have modifiable matrices.
Documentation DOMMatrixReadOnly by Mozilla Contributors, licensed under CC-BY-SA 2.5.
See also:
Constructor
Variables
read onlya:Float
Are double
representing each component of a 4x4 matrix needed for 2D rotations and translations. They are aliases for some components of the 4x4 matrix:
DOMMatrix
aren't.read onlyis2D:Bool
Is a Boolean
indicating if the matrix contains a 2D matrix and only accept 2D transformations.
read onlyisIdentity:Bool
Is a Boolean
indincating if the matrix identity, that is a matrix with 1
on the components of its diagonal, and 0
elsewhere.
Methods
rotate(angle:Float, originX:Float = 0.0, originY:Float = 0.0):DOMMatrix
Returns a DOMMatrix
containing a new matrix being the result of the original matrix being rotated by the given angle, with the rotation centered on the origin given. The original matrix is not modified.
rotateAxisAngle(x:Float, y:Float, z:Float, angle:Float):DOMMatrix
Returns a DOMMatrix
containing a new matrix being the result of the original matrix being rotated by the given angle and the given vector. The original matrix is not modified.
rotateFromVector(x:Float, y:Float):DOMMatrix
Returns a DOMMatrix
containing a new matrix being the result of the original matrix being rotated by the angle between the given vector and (1,0), centered on the origin given. The original matrix is not modified.
scale(scale:Float, originX:Float = 0.0, originY:Float = 0.0):DOMMatrix
Returns a DOMMatrix
containing a new matrix being the result of the matrix x and y dimensions being scaled by the given factor, centered on the origin given. The original matrix is not modified.
scale3d(scale:Float, originX:Float = 0.0, originY:Float = 0.0, originZ:Float = 0.0):DOMMatrix
Returns a DOMMatrix
containing a new matrix being the result of the matrix x, y and z dimension being scaled by the given factor, centered on the origin given. The original matrix is not modified.
scaleNonUniform(scaleX:Float, scaleY:Float = 1.0, scaleZ:Float = 1.0, originX:Float = 0.0, originY:Float = 0.0, originZ:Float = 0.0):DOMMatrix
Returns a DOMMatrix
containing a new matrix being the result of the matrix x, y and z dimension being scaled by the given factor for each dimension, centered on the origin given. The original matrix is not modified.
skewX(sx:Float):DOMMatrix
Returns a DOMMatrix
containing a new matrix being the result of the original matrix being skewed along the x-axis by the given factor. The original matrix is not modified.
skewY(sy:Float):DOMMatrix
Returns a DOMMatrix
containing a new matrix being the result of the original matrix being skewed along the y-axis by the given factor. The original matrix is not modified.
toFloat32Array():Float32Array
Returns a Float32Array
containing the 6 components (a
, b
, c
, d
, e
, f
) in the case of a 2D matrix or the 16 components (m11
, m12
, m13
, m14
, m21
, m22
, m23
, m24
, m31
, m32
, m33
, m34
, m41
, m42
, m43
, m44
) for a 3D matrix.
Throws:
null | DOMError |
---|
toFloat64Array():Float64Array
Returns a Float64Array
containing the 6 components (a
, b
, c
, d
, e
, f
) in the case of a 2D matrix or the 16 components (m11
, m12
, m13
, m14
, m21
, m22
, m23
, m24
, m31
, m32
, m33
, m34
, m41
, m42
, m43
, m44
) for a 3D matrix.
Throws:
null | DOMError |
---|
transformPoint(?point:Null<DOMPointInit>):DOMPoint
Returns a DOMPoint
that is the point given in parameter multiplied by the matrix. But the original point and the matrix aren't modified.