DOMMatrixReadOnly
注意:此功能在 Web Workers 中可用。
DOMMatrixReadOnly 接口表示一个只读的 4×4 矩阵,适用于 2D 和 3D 操作。DOMMatrix 接口 — 基于 DOMMatrixReadOnly — 添加了不可变性,允许您在创建后修改矩阵。
此接口应在Web Workers 中可用,尽管一些实现尚未支持。
构造函数
DOMMatrixReadOnly()-
创建一个新的
DOMMatrixReadOnly对象。
实例属性
此接口不继承任何属性。
DOMMatrixReadOnly.is2D只读-
一个布尔标志,如果矩阵被初始化为 2D 矩阵,则其值为
true。如果为false,则矩阵为 3D。 DOMMatrixReadOnly.isIdentity只读-
一个布尔值,如果矩阵是单位矩阵,则其值为
true。 m11,m12,m13,m14,m21,m22,m23,m24,m31,m32,m33,m34,m41,m42,m43,m44-
表示 4×4 矩阵每个分量的双精度浮点数值,其中
m11到m14是第一列,m21到m24是第二列,以此类推。 a,b,c,d,e,f-
表示执行 2D 旋转和变换所需的 4×4 矩阵分量的双精度浮点数值。这些是 4×4 矩阵特定分量的别名,如下所示。
2D 3D 等效项 am11bm12cm21dm22em41fm42
实例方法
此接口不继承任何方法。以下方法均不会修改原始矩阵。
DOMMatrixReadOnly.flipX()-
返回一个新
DOMMatrix,该矩阵由将源矩阵沿 X 轴翻转创建。这等同于将矩阵乘以DOMMatrix(-1, 0, 0, 1, 0, 0)。原始矩阵不会被修改。 DOMMatrixReadOnly.flipY()-
返回一个新
DOMMatrix,该矩阵由将源矩阵沿 Y 轴翻转创建。这等同于将矩阵乘以DOMMatrix(1, 0, 0, -1, 0, 0)。原始矩阵不会被修改。 DOMMatrixReadOnly.inverse()-
返回一个新
DOMMatrix,该矩阵由反转源矩阵创建。原始矩阵不会被修改。 DOMMatrixReadOnly.multiply()-
返回一个新
DOMMatrix,该矩阵由计算源矩阵与指定矩阵的点积创建。原始矩阵不会 DOMMatrixReadOnly.rotateAxisAngle()-
返回一个新
DOMMatrix,该矩阵由绕指定向量旋转源矩阵给定的角度创建。原始矩阵不会被修改。 DOMMatrixReadOnly.rotate()-
返回一个新
DOMMatrix,该矩阵由绕其每个轴以指定角度旋转源矩阵创建。原始矩阵不会被修改。 DOMMatrixReadOnly.rotateFromVector()-
返回一个新
DOMMatrix,该矩阵由将源矩阵旋转到与指定向量和(1, 0)之间的角度创建。原始矩阵不会被修改。 DOMMatrixReadOnly.scale()-
返回一个新
DOMMatrix,该矩阵由以指定量沿每个轴缩放源矩阵创建,以给定原点为中心。默认情况下,X 轴和 Z 轴的缩放因子为1,Y 轴没有默认缩放值。默认原点为(0, 0, 0)。原始矩阵不会被修改。 DOMMatrixReadOnly.scale3d()-
返回一个新
DOMMatrix,该矩阵由以给定原点为中心,沿所有轴按给定因子缩放源 3D 矩阵创建。默认原点为(0, 0, 0)。原始矩阵不会被修改。 DOMMatrixReadOnly.scaleNonUniform()已弃用-
返回一个新
DOMMatrix,该矩阵通过以给定原点为中心,在 X、Y 和 Z 轴上应用指定的倾斜缩放创建。默认情况下,Y 轴和 Z 轴的缩放因子均为1,但 X 轴的缩放因子必须指定。默认原点为(0, 0, 0)。原始矩阵不会被修改。 DOMMatrixReadOnly.skewX()-
返回一个新
DOMMatrix,该矩阵通过沿 X 轴对源矩阵应用指定的倾斜变换创建。原始矩阵不会被修改。 DOMMatrixReadOnly.skewY()-
返回一个新
DOMMatrix,该矩阵通过沿 Y 轴对源矩阵应用指定的倾斜变换创建。原始矩阵不会被修改。 DOMMatrixReadOnly.toFloat32Array()-
返回一个新的单精度浮点数
Float32Array,包含构成矩阵的全部 16 个元素。 DOMMatrixReadOnly.toFloat64Array()-
返回一个新的双精度浮点数
Float64Array,包含构成矩阵的全部 16 个元素。 DOMMatrixReadOnly.toJSON()-
返回
DOMMatrixReadOnly对象的 JSON 表示形式。 DOMMatrixReadOnly.toString()-
创建并返回矩阵的 CSS 矩阵语法表示形式,使用适当的 CSS 矩阵表示法。
DOMMatrixReadOnly.transformPoint()-
使用矩阵转换指定的点,返回一个包含转换后点的新
DOMPoint对象。矩阵和原始点都不会被修改。 DOMMatrixReadOnly.translate()-
返回一个新
DOMMatrix,其中包含通过使用指定向量翻译源矩阵计算出的矩阵。默认情况下,向量为(0, 0, 0)。原始矩阵不会被修改。
静态方法
fromFloat32Array()-
给定一个单精度(32 位)浮点数值数组,创建一个新的可变
DOMMatrix对象。如果数组有六个值,则结果是 2D 矩阵;如果数组有 16 个值,则结果是 3D 矩阵。否则,将抛出TypeError异常。 fromFloat64Array()-
给定一个双精度(64 位)浮点数值数组,创建一个新的可变
DOMMatrix对象。如果数组有六个值,则结果是 2D 矩阵;如果数组有 16 个值,则结果是 3D 矩阵。否则,将抛出TypeError异常。 fromMatrix()-
给定一个现有矩阵或提供其属性值的对象,创建一个新的可变
DOMMatrix对象。如果未指定矩阵,则矩阵将使用除右下角和其左上方元素(m33和m34)外的所有元素都设置为0进行初始化。这些元素的默认值为1。
规范
| 规范 |
|---|
| Geometry Interfaces Module Level 1 # DOMMatrix |
浏览器兼容性
加载中…
另见
- 可变的矩阵类型
DOMMatrix,它基于此类型。 - 此接口可以生成 CSS
matrix()和matrix3d()函数式符号,用于 CSStransform。