| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef DOMMatrix_h | 5 #ifndef DOMMatrix_h |
| 6 #define DOMMatrix_h | 6 #define DOMMatrix_h |
| 7 | 7 |
| 8 #include "core/dom/DOMMatrixInit.h" |
| 8 #include "core/dom/DOMMatrixReadOnly.h" | 9 #include "core/dom/DOMMatrixReadOnly.h" |
| 9 | 10 |
| 10 namespace blink { | 11 namespace blink { |
| 11 | 12 |
| 12 class DOMMatrix : public DOMMatrixReadOnly { | 13 class CORE_EXPORT DOMMatrix : public DOMMatrixReadOnly { |
| 13 DEFINE_WRAPPERTYPEINFO(); | 14 DEFINE_WRAPPERTYPEINFO(); |
| 14 public: | 15 public: |
| 15 static DOMMatrix* create(); | 16 static DOMMatrix* create(); |
| 16 static DOMMatrix* create(DOMMatrixReadOnly*); | 17 static DOMMatrix* create(DOMMatrixReadOnly*); |
| 17 static DOMMatrix* create(const SkMatrix44&); | 18 static DOMMatrix* create(const SkMatrix44&); |
| 18 static DOMMatrix* fromFloat32Array(DOMFloat32Array*, ExceptionState&); | 19 static DOMMatrix* fromFloat32Array(DOMFloat32Array*, ExceptionState&); |
| 19 static DOMMatrix* fromFloat64Array(DOMFloat64Array*, ExceptionState&); | 20 static DOMMatrix* fromFloat64Array(DOMFloat64Array*, ExceptionState&); |
| 21 static DOMMatrix* fromMatrix(DOMMatrixInit&, ExceptionState&); |
| 20 | 22 |
| 21 void setA(double value) { m_matrix->setM11(value); } | 23 void setA(double value) { m_matrix->setM11(value); } |
| 22 void setB(double value) { m_matrix->setM12(value); } | 24 void setB(double value) { m_matrix->setM12(value); } |
| 23 void setC(double value) { m_matrix->setM21(value); } | 25 void setC(double value) { m_matrix->setM21(value); } |
| 24 void setD(double value) { m_matrix->setM22(value); } | 26 void setD(double value) { m_matrix->setM22(value); } |
| 25 void setE(double value) { m_matrix->setM41(value); } | 27 void setE(double value) { m_matrix->setM41(value); } |
| 26 void setF(double value) { m_matrix->setM42(value); } | 28 void setF(double value) { m_matrix->setM42(value); } |
| 27 | 29 |
| 28 void setM11(double value) { m_matrix->setM11(value); } | 30 void setM11(double value) { m_matrix->setM11(value); } |
| 29 void setM12(double value) { m_matrix->setM12(value); } | 31 void setM12(double value) { m_matrix->setM12(value); } |
| 30 void setM13(double value) { m_matrix->setM13(value); setIs2D(!value); } | 32 void setM13(double value) { m_matrix->setM13(value); setIs2D(!value); } |
| 31 void setM14(double value) { m_matrix->setM14(value); setIs2D(!value); } | 33 void setM14(double value) { m_matrix->setM14(value); setIs2D(!value); } |
| 32 void setM21(double value) { m_matrix->setM21(value); } | 34 void setM21(double value) { m_matrix->setM21(value); } |
| 33 void setM22(double value) { m_matrix->setM22(value); } | 35 void setM22(double value) { m_matrix->setM22(value); } |
| 34 void setM23(double value) { m_matrix->setM23(value); setIs2D(!value); } | 36 void setM23(double value) { m_matrix->setM23(value); setIs2D(!value); } |
| 35 void setM24(double value) { m_matrix->setM24(value); setIs2D(!value); } | 37 void setM24(double value) { m_matrix->setM24(value); setIs2D(!value); } |
| 36 void setM31(double value) { m_matrix->setM31(value); setIs2D(!value); } | 38 void setM31(double value) { m_matrix->setM31(value); setIs2D(!value); } |
| 37 void setM32(double value) { m_matrix->setM32(value); setIs2D(!value); } | 39 void setM32(double value) { m_matrix->setM32(value); setIs2D(!value); } |
| 38 void setM33(double value) { m_matrix->setM33(value); setIs2D(value != 1); } | 40 void setM33(double value) { m_matrix->setM33(value); setIs2D(value != 1); } |
| 39 void setM34(double value) { m_matrix->setM34(value); setIs2D(!value); } | 41 void setM34(double value) { m_matrix->setM34(value); setIs2D(!value); } |
| 40 void setM41(double value) { m_matrix->setM41(value); } | 42 void setM41(double value) { m_matrix->setM41(value); } |
| 41 void setM42(double value) { m_matrix->setM42(value); } | 43 void setM42(double value) { m_matrix->setM42(value); } |
| 42 void setM43(double value) { m_matrix->setM43(value); setIs2D(!value); } | 44 void setM43(double value) { m_matrix->setM43(value); setIs2D(!value); } |
| 43 void setM44(double value) { m_matrix->setM44(value); setIs2D(value != 1); } | 45 void setM44(double value) { m_matrix->setM44(value); setIs2D(value != 1); } |
| 44 | 46 |
| 45 DOMMatrix* multiplySelf(DOMMatrix*); | 47 DOMMatrix* multiplySelf(DOMMatrixInit&, ExceptionState&); |
| 46 DOMMatrix* preMultiplySelf(DOMMatrix*); | 48 DOMMatrix* preMultiplySelf(DOMMatrixInit&, ExceptionState&); |
| 47 DOMMatrix* translateSelf(double tx, double ty, double tz = 0); | 49 DOMMatrix* translateSelf(double tx, double ty, double tz = 0); |
| 48 DOMMatrix* scaleSelf(double scale, double ox = 0, double oy = 0); | 50 DOMMatrix* scaleSelf(double scale, double ox = 0, double oy = 0); |
| 49 DOMMatrix* scale3dSelf(double scale, double ox = 0, double oy = 0, double oz
= 0); | 51 DOMMatrix* scale3dSelf(double scale, double ox = 0, double oy = 0, double oz
= 0); |
| 50 DOMMatrix* scaleNonUniformSelf(double sx, double sy = 1, double sz = 1, | 52 DOMMatrix* scaleNonUniformSelf(double sx, double sy = 1, double sz = 1, |
| 51 double ox = 0, double oy = 0, double oz = 0); | 53 double ox = 0, double oy = 0, double oz = 0); |
| 52 DOMMatrix* skewXSelf(double sx = 0); | 54 DOMMatrix* skewXSelf(double sx = 0); |
| 53 DOMMatrix* skewYSelf(double sy = 0); | 55 DOMMatrix* skewYSelf(double sy = 0); |
| 54 DOMMatrix* invertSelf(); | 56 DOMMatrix* invertSelf(); |
| 55 | 57 |
| 56 private: | 58 private: |
| 57 DOMMatrix(const TransformationMatrix&, bool is2D = true); | 59 DOMMatrix(const TransformationMatrix&, bool is2D = true); |
| 58 template <typename T> | 60 template <typename T> |
| 59 DOMMatrix(T sequence, int size); | 61 DOMMatrix(T sequence, int size); |
| 60 | 62 |
| 61 void setIs2D(bool value); | 63 void setIs2D(bool value); |
| 62 }; | 64 }; |
| 63 | 65 |
| 64 } // namespace blink | 66 } // namespace blink |
| 65 | 67 |
| 66 #endif | 68 #endif |
| OLD | NEW |