DOMMatrix
注意:此功能在 Web Workers 中可用。
DOMMatrix 接口表示 4x4 矩阵,适用于 2D 和 3D 操作,包括旋转和翻译。它是 DOMMatrixReadOnly 接口的可变版本。该接口在 Web Workers 中可用。
WebKitCSSMatrix 和 SVGMatrix 是 DOMMatrix 的别名。
构造函数
DOMMatrix()-
创建并返回一个新的
DOMMatrix对象。
实例属性
此接口继承自 DOMMatrixReadOnly 的属性,但其中一些属性已修改为可变。
m11,m12,m13,m14,m21,m22,m23,m24,m31,m32,m33,m34,m41,m42,m43,m44-
双精度浮点数值,表示 4x4 矩阵的每个分量,其中
m11到m14是第一列,m21到m24是第二列,以此类推。 a,b,c,d,e,f-
双精度浮点数值,表示执行 2D 旋转和翻译所需的 4x4 矩阵的分量。它们是 4x4 矩阵特定分量的别名,如下所示。
2D3D 等效项am11bm12cm21dm22em41fm42
实例方法
此接口包含以下方法,以及它从 DOMMatrixReadOnly 继承的方法。
DOMMatrix.invertSelf()-
通过求逆来修改矩阵。如果矩阵无法求逆,则其所有分量都设置为
NaN,并且is2D返回false。 DOMMatrix.multiplySelf()-
通过将指定
DOMMatrix后乘来修改矩阵。这等同于点积A⋅B,其中矩阵A是源矩阵,B是作为方法参数传入的矩阵。返回自身。 DOMMatrix.preMultiplySelf()-
通过将指定
DOMMatrix前乘来修改矩阵。返回自身。 DOMMatrix.translateSelf()-
通过应用指定的向量来修改矩阵。默认向量为
[0, 0, 0]。返回自身。 DOMMatrix.scaleSelf()-
通过应用指定的缩放因子,并以指定原点为中心来修改矩阵。也返回自身。默认情况下,所有三个轴的缩放因子均为
1,原点为(0, 0, 0)。返回自身。 DOMMatrix.scale3dSelf()-
通过将指定的缩放因子应用于所有三个轴,并以给定原点为中心来修改矩阵。返回自身。
DOMMatrix.rotateSelf()-
通过围绕每个轴以指定的度数进行旋转来修改矩阵。返回自身。
DOMMatrix.rotateAxisAngleSelf()-
通过围绕给定向量以指定角度进行旋转来修改矩阵。返回自身。
DOMMatrix.rotateFromVectorSelf()-
通过将矩阵旋转到指定向量与
(1, 0)之间的角度来修改矩阵。返回自身。 DOMMatrix.setMatrixValue()-
用指定变换或变换描述的矩阵替换矩阵的内容。返回自身。
DOMMatrix.skewXSelf()-
通过沿 X 轴应用指定的倾斜变换来修改矩阵。返回自身。
DOMMatrix.skewYSelf()-
通过沿 Y 轴应用指定的倾斜变换来修改矩阵。返回自身。
静态方法
此接口继承自 DOMMatrixReadOnly 的方法。
fromFloat32Array()-
给定一个单精度(32 位)浮点值数组,创建一个新的可变
DOMMatrix对象。如果数组包含六个值,则结果为 2D 矩阵;如果数组包含 16 个值,则结果为 3D 矩阵。否则,将抛出TypeError异常。 fromFloat64Array()-
给定一个双精度(64 位)浮点值数组,创建一个新的可变
DOMMatrix对象。如果数组包含六个值,则结果为 2D 矩阵;如果数组包含 16 个值,则结果为 3D 矩阵。否则,将抛出TypeError异常。 fromMatrix()-
给定一个现有矩阵或提供其属性值的对象,创建一个新的可变
DOMMatrix对象。
用法说明
DOMMatrix 接口定义的矩阵由四行四列组成。虽然在本篇文章的范围之外详细解释涉及的数学运算,但这种 4x4 的尺寸足以描述您可以应用于 2D 或 3D 几何体的任何变换。
以下是组成 4x4 抽象矩阵的 16 个元素(m_11 到 m_44)的位置:
DOMMatrix 接口的设计意图是将其用于标记语言中的所有矩阵。
规范
| 规范 |
|---|
| Geometry Interfaces Module Level 1 # DOMMatrix |
浏览器兼容性
加载中…