files/en-us/web/api/dommatrixreadonly/fromfloat32array_static/index.md
{{APIRef("Geometry Interfaces")}}{{AvailableInWorkers}}
The fromFloat32Array() static method of the {{domxref("DOMMatrixReadOnly")}} interface creates a new {{domxref("DOMMatrixReadOnly")}} object given an array of single-precision (32-bit) floating-point values.
If the array has 6 values, the result is a 2D matrix; if the array has 16 values, the result is a 3D matrix. Otherwise, a {{jsxref("TypeError")}} exception is thrown.
DOMMatrixReadOnly.fromFloat32Array(array)
array
A {{domxref("DOMMatrixReadOnly")}} object.
array parameter is not 6 or 16.This example creates a 2D matrix from a 6-element Float32Array.
const float32Array = new Float32Array([1, 0, 0, 1, 10, 20]);
const matrix2D = DOMMatrixReadOnly.fromFloat32Array(float32Array);
console.log(matrix2D.toString());
// Output: matrix(1, 0, 0, 1, 10, 20)
console.log(matrix2D.is2D);
// Output: true
This example creates a 3D matrix from a 16-element Float32Array.
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);
// Output: false
console.log(matrix3D.m41, matrix3D.m42, matrix3D.m43);
// Output: 10 20 30
{{Specifications}}
{{Compat}}