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 DOMMatrixReadOnly_h | 5 #ifndef DOMMatrixReadOnly_h |
6 #define DOMMatrixReadOnly_h | 6 #define DOMMatrixReadOnly_h |
7 | 7 |
8 #include "platform/heap/Handle.h" | 8 #include "platform/heap/Handle.h" |
9 | 9 |
10 namespace blink { | 10 namespace blink { |
11 | 11 |
| 12 class DOMMatrix; |
| 13 |
12 class DOMMatrixReadOnly : public GarbageCollected<DOMMatrixReadOnly> { | 14 class DOMMatrixReadOnly : public GarbageCollected<DOMMatrixReadOnly> { |
13 public: | 15 public: |
14 double a() const { return m11(); } | 16 double a() const { return m11(); } |
15 double b() const { return m12(); } | 17 double b() const { return m12(); } |
16 double c() const { return m21(); } | 18 double c() const { return m21(); } |
17 double d() const { return m22(); } | 19 double d() const { return m22(); } |
18 double e() const { return m41(); } | 20 double e() const { return m41(); } |
19 double f() const { return m42(); } | 21 double f() const { return m42(); } |
20 | 22 |
21 double m11() const { return m_matrix[0][0]; } | 23 double m11() const { return m_matrix[0][0]; } |
22 double m12() const { return m_matrix[0][1]; } | 24 double m12() const { return m_matrix[0][1]; } |
23 double m13() const { return m_matrix[0][2]; } | 25 double m13() const { return m_matrix[0][2]; } |
24 double m14() const { return m_matrix[0][3]; } | 26 double m14() const { return m_matrix[0][3]; } |
25 double m21() const { return m_matrix[1][0]; } | 27 double m21() const { return m_matrix[1][0]; } |
26 double m22() const { return m_matrix[1][1]; } | 28 double m22() const { return m_matrix[1][1]; } |
27 double m23() const { return m_matrix[1][2]; } | 29 double m23() const { return m_matrix[1][2]; } |
28 double m24() const { return m_matrix[1][3]; } | 30 double m24() const { return m_matrix[1][3]; } |
29 double m31() const { return m_matrix[2][0]; } | 31 double m31() const { return m_matrix[2][0]; } |
30 double m32() const { return m_matrix[2][1]; } | 32 double m32() const { return m_matrix[2][1]; } |
31 double m33() const { return m_matrix[2][2]; } | 33 double m33() const { return m_matrix[2][2]; } |
32 double m34() const { return m_matrix[2][3]; } | 34 double m34() const { return m_matrix[2][3]; } |
33 double m41() const { return m_matrix[3][0]; } | 35 double m41() const { return m_matrix[3][0]; } |
34 double m42() const { return m_matrix[3][1]; } | 36 double m42() const { return m_matrix[3][1]; } |
35 double m43() const { return m_matrix[3][2]; } | 37 double m43() const { return m_matrix[3][2]; } |
36 double m44() const { return m_matrix[3][3]; } | 38 double m44() const { return m_matrix[3][3]; } |
37 | 39 |
38 bool is2D() const; | 40 bool is2D() const; |
39 bool isIdentity() const; | 41 bool isIdentity() const; |
40 | 42 |
| 43 DOMMatrix* translate(double tx, double ty, double tz = 0); |
| 44 |
41 void trace(Visitor*) { } | 45 void trace(Visitor*) { } |
42 | 46 |
43 protected: | 47 protected: |
44 double m_matrix[4][4]; | 48 double m_matrix[4][4]; |
45 bool m_is2D; | 49 bool m_is2D; |
46 }; | 50 }; |
47 | 51 |
48 } // namespace blink | 52 } // namespace blink |
49 | 53 |
50 #endif | 54 #endif |
OLD | NEW |