DOMMatrixReadOnly: fromFloat32Array() 静的メソッド
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2020年7月.
メモ: この機能はウェブワーカー内で利用可能です。
fromFloat32Array() は DOMMatrixReadOnly インターフェイスの静的メソッドで、新しい DOMMatrixReadOnly オブジェクトを与えられた単精度(32 ビット)浮動小数点値の配列から作成します。
配列に 6 個の値がある場合、結果は二次元用の行列になります。配列に 16 個の値がある場合、結果は三次元用の行列になります。それ以外の場合は TypeError 例外が発生します。
構文
js
DOMMatrixReadOnly.fromFloat32Array(array)
引数
array-
Float32Arrayで、列優先順で 6 個または 16 個の要素です。
返値
DOMMatrixReadOnly オブジェクトです。
例外
TypeError-
array引数の長さが 6 個または 16 個ではない場合に発生します。
例
>Float32Array から二次元用の行列を作成
この例は二次元用の行列を要素 6 個の Float32Array から作成します。
js
const float32Array = new Float32Array([1, 0, 0, 1, 10, 20]);
const matrix2D = DOMMatrixReadOnly.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 = DOMMatrixReadOnly.fromFloat32Array(float32Array);
console.log(matrix3D.is2D);
// 出力: false
console.log(matrix3D.m41, matrix3D.m42, matrix3D.m43);
// 出力: 10 20 30
仕様書
| Specification |
|---|
| Geometry Interfaces Module Level 1> # dom-dommatrixreadonly-fromfloat32array> |