このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

DOMMatrix: 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()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

仕様書

Specification
Geometry Interfaces Module Level 1
# dom-dommatrix-fromfloat32array

ブラウザーの互換性

関連情報