DOMMatrix: fromFloat32Array() 静的メソッド
Baseline
広く利用可能
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2020年7月以降、すべてのブラウザーで利用可能です。
メモ: この機能はウェブワーカー内で利用可能です。
fromFloat32Array() は DOMMatrix インターフェイスの静的メソッドで、新しい DOMMatrix オブジェクトを作成して指定された単精度(32 ビット)浮動小数点値の配列で初期化します。
配列に 6 個の値があった場合、結果は二次元行列になります。配列に 16 個の値があった場合、結果は三次元行列になります。それ以外の場合は、TypeError 例外が発生します。
構文
js
DOMMatrix.fromFloat32Array(array)
引数
array-
Float32Arrayで、列優先順で 6 個または 16 個の要素があるものです。
返値
DOMMatrix オブジェクトです。
例外
TypeError-
arrayの長さが 6 または 16 以外である場合に発生します。
例
>Float32Array から二次元行列を作成
この例は、 6 個の要素の Float32Array から二次元行列を作成します。
js
const float32Array = new Float32Array([1, 0, 0, 1, 10, 20]);
const matrix2D = DOMMatrix.fromFloat32Array(float32Array);
console.log(matrix2D.toString());
// 出力: matrix(1, 0, 0, 1, 10, 20)
console.log(matrix2D.is2D);
// 出力: true
Float32Array から三次元行列を作成
この例は、 16 個の要素の Float32Array から三次元行列を作成します。
js
const float32Array = new Float32Array([
1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 10, 20, 30, 1,
]);
const matrix3D = DOMMatrix.fromFloat32Array(float32Array);
console.log(matrix3D.is2D);
// 出力: false
console.log(matrix3D.m41, matrix3D.m42, matrix3D.m43);
// 出力: 10 20 30
仕様書
| 仕様書 |
|---|
| Geometry Interfaces Module Level 1> # dom-dommatrix-fromfloat32array> |