Index: Source/core/dom/DOMMatrixReadOnly.cpp |
diff --git a/Source/core/dom/DOMMatrixReadOnly.cpp b/Source/core/dom/DOMMatrixReadOnly.cpp |
index 40de8340d88080c989cec20dd278657950403d6c..13dee54fa792a0130f283825c578da7ec934670c 100644 |
--- a/Source/core/dom/DOMMatrixReadOnly.cpp |
+++ b/Source/core/dom/DOMMatrixReadOnly.cpp |
@@ -38,4 +38,28 @@ DOMMatrix* DOMMatrixReadOnly::scaleNonUniform(double sx, double sy, double sz, |
return DOMMatrix::create(this)->scaleNonUniformSelf(sx, sy, sz, ox, oy, oz); |
} |
+PassRefPtr<Float32Array> DOMMatrixReadOnly::toFloat32Array() const |
+{ |
+ float array[] = { |
+ m_matrix.m11(), m_matrix.m12(), m_matrix.m13(), m_matrix.m14(), |
+ m_matrix.m21(), m_matrix.m22(), m_matrix.m23(), m_matrix.m24(), |
+ m_matrix.m31(), m_matrix.m32(), m_matrix.m33(), m_matrix.m34(), |
+ m_matrix.m41(), m_matrix.m42(), m_matrix.m43(), m_matrix.m44() |
+ }; |
+ |
+ return Float32Array::create(array, 16); |
+} |
+ |
+PassRefPtr<Float64Array> DOMMatrixReadOnly::toFloat64Array() const |
+{ |
+ double array[] = { |
+ m_matrix.m11(), m_matrix.m12(), m_matrix.m13(), m_matrix.m14(), |
+ m_matrix.m21(), m_matrix.m22(), m_matrix.m23(), m_matrix.m24(), |
+ m_matrix.m31(), m_matrix.m32(), m_matrix.m33(), m_matrix.m34(), |
+ m_matrix.m41(), m_matrix.m42(), m_matrix.m43(), m_matrix.m44() |
+ }; |
+ |
+ return Float64Array::create(array, 16); |
+} |
+ |
} // namespace blink |