Home | History | Annotate | Download | only in gfx

Lines Matching refs:Transform

21 // 4x4 transformation matrix. Transform is cheap and explicitly allows
23 class UI_EXPORT Transform {
30 Transform() : matrix_(SkMatrix44::kIdentity_Constructor) {}
34 Transform(SkipInitialization)
36 Transform(const Transform& rhs) : matrix_(rhs.matrix_) {}
38 Transform(const Transform& lhs, const Transform& rhs)
40 // Constructs a transform from explicit 16 matrix elements. Elements
42 Transform(double col1row1, double col2row1, double col3row1, double col4row1,
46 // Constructs a transform from explicit 2d elements. All other matrix
49 Transform(double col1row1, double col2row1,
52 ~Transform() {}
54 bool operator==(const Transform& rhs) const { return matrix_ == rhs.matrix_; }
55 bool operator!=(const Transform& rhs) const { return matrix_ != rhs.matrix_; }
57 // Resets this transform to the identity transform.
86 // Applies the current transformation on a perspective transform and assigns
91 // (i.e. 'this = this * transform;').
92 void PreconcatTransform(const Transform& transform);
95 // (i.e. 'this = transform * this;').
96 void ConcatTransform(const Transform& transform);
135 // Returns true if this transform is non-singular.
139 // have its back side facing frontwards after applying the transform.
142 // Inverts the transform which is passed in. Returns true if successful.
143 bool GetInverse(Transform* transform) const WARN_UNUSED_RESULT;
145 // Transposes this transform in place.
153 // - For x and y values, the new transform behaves effectively like an
155 // - For z values, the new transform overrides any effect that the transform
158 // - Because of linearity of transforms, this flattened transform also
196 // Note: this call is expensive since we need to decompose the transform. If
200 bool Blend(const Transform& from, double progress);
203 Transform operator*(const Transform& other) const {
204 return Transform(*this, other);
208 Transform& operator*=(const Transform& other) {