OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 MatrixTransformComponent_h | 5 #ifndef MatrixTransformComponent_h |
6 #define MatrixTransformComponent_h | 6 #define MatrixTransformComponent_h |
7 | 7 |
8 #include "core/css/cssom/TransformComponent.h" | 8 #include "core/css/cssom/TransformComponent.h" |
9 #include "platform/transforms/TransformationMatrix.h" | 9 #include "platform/transforms/TransformationMatrix.h" |
10 | 10 |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
51 double m41() const { return m_matrix->m41(); } | 51 double m41() const { return m_matrix->m41(); } |
52 double m42() const { return m_matrix->m42(); } | 52 double m42() const { return m_matrix->m42(); } |
53 double m43() const { return m_matrix->m43(); } | 53 double m43() const { return m_matrix->m43(); } |
54 double m44() const { return m_matrix->m44(); } | 54 double m44() const { return m_matrix->m44(); } |
55 | 55 |
56 TransformComponentType type() const override { return m_is2D ? MatrixType :
Matrix3DType; } | 56 TransformComponentType type() const override { return m_is2D ? MatrixType :
Matrix3DType; } |
57 | 57 |
58 // Bindings require a non const return value. | 58 // Bindings require a non const return value. |
59 MatrixTransformComponent* asMatrix() const override { return const_cast<Matr
ixTransformComponent*>(this); } | 59 MatrixTransformComponent* asMatrix() const override { return const_cast<Matr
ixTransformComponent*>(this); } |
60 | 60 |
61 RawPtr<CSSFunctionValue> toCSSValue() const override; | 61 CSSFunctionValue* toCSSValue() const override; |
62 | 62 |
63 static MatrixTransformComponent* perspective(double length); | 63 static MatrixTransformComponent* perspective(double length); |
64 | 64 |
65 static MatrixTransformComponent* rotate(double angle); | 65 static MatrixTransformComponent* rotate(double angle); |
66 static MatrixTransformComponent* rotate3d(double angle, double x, double y,
double z); | 66 static MatrixTransformComponent* rotate3d(double angle, double x, double y,
double z); |
67 | 67 |
68 static MatrixTransformComponent* scale(double x, double y); | 68 static MatrixTransformComponent* scale(double x, double y); |
69 static MatrixTransformComponent* scale3d(double x, double y, double z); | 69 static MatrixTransformComponent* scale3d(double x, double y, double z); |
70 | 70 |
71 static MatrixTransformComponent* skew(double x, double y); | 71 static MatrixTransformComponent* skew(double x, double y); |
(...skipping 27 matching lines...) Expand all Loading... |
99 // supports 16-byte alignment but Oilpan doesn't. So we use an OwnPtr | 99 // supports 16-byte alignment but Oilpan doesn't. So we use an OwnPtr |
100 // to allocate TransformationMatrix on PartitionAlloc. | 100 // to allocate TransformationMatrix on PartitionAlloc. |
101 // TODO(oilpan): Oilpan should support 16-byte aligned allocations. | 101 // TODO(oilpan): Oilpan should support 16-byte aligned allocations. |
102 OwnPtr<const TransformationMatrix> m_matrix; | 102 OwnPtr<const TransformationMatrix> m_matrix; |
103 bool m_is2D; | 103 bool m_is2D; |
104 }; | 104 }; |
105 | 105 |
106 } // namespace blink | 106 } // namespace blink |
107 | 107 |
108 #endif | 108 #endif |
OLD | NEW |