DOMMatrix: scale3dSelf() メソッド
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2020年1月.
メモ: この機能はウェブワーカー内で利用可能です。
scale3dSelf() は DOMMatrix インターフェイスのメソッドで、変更を行う座標変換メソッドであり、指定された原点(デフォルトは (0, 0, 0))を中心として、3 軸すべてに指定された変倍率を適用することで行列を変更し、三次元で変倍された行列を返します。
行列を変更せずに三次元変倍する場合は、 DOMMatrixReadOnly.scale3d() を参照してください。これは、元の行列を変更せずに新しい変倍行列を生成します。
構文
js
scale3dSelf()
scale3dSelf(scale)
scale3dSelf(scale, originX)
scale3dSelf(scale, originX, originY)
scale3dSelf(scale, originX, originY, originZ)
引数
scale-
乗数、倍率値。倍率が指定されない場合、デフォルトで
1となります。倍率が 1 でない場合、現在の行列のis2Dプロパティはfalseに設定されます。 originX省略可-
座標変換の原点の X 座標。原点が与えられなかった場合、既定値は
0です。 originY省略可-
座標変換の原点の Y 座標。原点が与えられなかった場合、既定値は
0です。 originZ省略可-
座標変換の原点の Z 座標。原点が与えられなかった場合、既定値は
0です。
返値
自分自身を返します。 DOMMatrix です。
例
js
const matrix = new DOMMatrix();
console.log(matrix.scale3dSelf(2).toString());
/* matrix3d(
2, 0, 0, 0,
0, 2, 0, 0,
0, 0, 2, 0,
0, 0, 0, 1) */
console.log(matrix.scale3dSelf(3.1, 25, 25, 1.25).toString());
/* matrix3d(
6.2, 0, 0, 0,
0, 6.2, 0, 0,
0, 0, 6.2, 0,
-105, -105, -5.25, 1) */
console.log(matrix.toString());
/* matrix3d(
6.2, 0, 0, 0,
0, 6.2, 0, 0,
0, 0, 6.2, 0,
-105, -105, -5.25, 1) (上と同じ) */
仕様書
| Specification |
|---|
| Geometry Interfaces Module Level 1> # dom-dommatrix-scale3dself> |
ブラウザーの互換性
関連情報
DOMMatrixReadOnly.scale3d()DOMMatrix.scaleSelf()- CSS の
transformプロパティ、scale3d()関数、matrix3d()関数 - CSS 座標変換モジュール
- SVG の
transform属性 CanvasRenderingContext2Dインターフェイスのtransform()メソッド