Lines Matching defs:SkM44

134 class SK_API SkM44 {
136 SkM44(const SkM44& src) = default;
137 SkM44& operator=(const SkM44& src) = default;
139 constexpr SkM44()
146 SkM44(const SkM44& a, const SkM44& b) {
153 SkM44(Uninitialized_Constructor) {}
158 constexpr SkM44(NaN_Constructor)
168 constexpr SkM44(SkScalar m0, SkScalar m4, SkScalar m8, SkScalar m12,
179 static SkM44 Rows(const SkV4& r0, const SkV4& r1, const SkV4& r2, const SkV4& r3) {
180 SkM44 m(kUninitialized_Constructor);
187 static SkM44 Cols(const SkV4& c0, const SkV4& c1, const SkV4& c2, const SkV4& c3) {
188 SkM44 m(kUninitialized_Constructor);
196 static SkM44 RowMajor(const SkScalar r[16]) {
197 return SkM44(r[ 0], r[ 1], r[ 2], r[ 3],
202 static SkM44 ColMajor(const SkScalar c[16]) {
203 return SkM44(c[0], c[4], c[ 8], c[12],
209 static SkM44 Translate(SkScalar x, SkScalar y, SkScalar z = 0) {
210 return SkM44(1, 0, 0, x,
216 static SkM44 Scale(SkScalar x, SkScalar y, SkScalar z = 1) {
217 return SkM44(x, 0, 0, 0,
223 static SkM44 Rotate(SkV3 axis, SkScalar radians) {
224 SkM44 m(kUninitialized_Constructor);
230 static SkM44 RectToRect(const SkRect& src, const SkRect& dst);
232 static SkM44 LookAt(const SkV3& eye, const SkV3& center, const SkV3& up);
233 static SkM44 Perspective(float near, float far, float angle);
235 bool operator==(const SkM44& other) const;
236 bool operator!=(const SkM44& other) const {
277 SkM44& setIdentity() {
285 SkM44& setTranslate(SkScalar x, SkScalar y, SkScalar z = 0) {
293 SkM44& setScale(SkScalar x, SkScalar y, SkScalar z = 1) {
308 SkM44& setRotateUnitSinCos(SkV3 axis, SkScalar sinAngle, SkScalar cosAngle);
316 SkM44& setRotateUnit(SkV3 axis, SkScalar radians) {
327 SkM44& setRotate(SkV3 axis, SkScalar radians);
329 SkM44& setConcat(const SkM44& a, const SkM44& b);
331 friend SkM44 operator*(const SkM44& a, const SkM44& b) {
332 return SkM44(a, b);
335 SkM44& preConcat(const SkM44& m) {
339 SkM44& postConcat(const SkM44& m) {
367 bool SK_WARN_UNUSED_RESULT invert(SkM44* inverse) const;
369 SkM44 SK_WARN_UNUSED_RESULT transpose() const;
373 /** Writes text representation of SkM44 to string.
392 /* When converting from SkM44 to SkMatrix, the third row and
393 * column is dropped. When converting from SkMatrix to SkM44
406 explicit SkM44(const SkMatrix& src)
407 : SkM44(src[SkMatrix::kMScaleX], src[SkMatrix::kMSkewX], 0, src[SkMatrix::kMTransX],
413 SkM44& preTranslate(SkScalar x, SkScalar y, SkScalar z = 0);
414 SkM44& postTranslate(SkScalar x, SkScalar y, SkScalar z = 0);
416 SkM44& preScale(SkScalar x, SkScalar y);
417 SkM44& preScale(SkScalar x, SkScalar y, SkScalar z);
418 SkM44& preConcat(const SkMatrix&);