1 // Copyright 2019 Google LLC.
2 // Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
3 #include "tools/fiddle/examples.h"
4 // HASH=f4365ef332f51f7fd25040e0771ba9a2
5 REG_FIDDLE(Matrix_dirtyMatrixTypeCache, 256, 256, true, 0) {
draw(SkCanvas * canvas)6 void draw(SkCanvas* canvas) {
7 SkMatrix matrix;
8 matrix.setIdentity();
9 SkDebugf("with identity matrix: x = %g\n", matrix.mapXY(24, 42).fX);
10 SkScalar& skewRef = matrix[SkMatrix::kMSkewX];
11 skewRef = 0;
12 SkDebugf("after skew x mod: x = %g\n", matrix.mapXY(24, 42).fX);
13 skewRef = 1;
14 SkDebugf("after 2nd skew x mod: x = %g\n", matrix.mapXY(24, 42).fX);
15 matrix.dirtyMatrixTypeCache();
16 SkDebugf("after dirty cache: x = %g\n", matrix.mapXY(24, 42).fX);
17 }
18 } // END FIDDLE
19