• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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=7f60cb030d3f9b2473adbe3e34b19d91
5 REG_FIDDLE(Canvas_getLocalClipBounds, 256, 256, true, 0) {
draw(SkCanvas * canvas)6 void draw(SkCanvas* canvas) {
7     SkCanvas local(256, 256);
8     canvas = &local;
9     SkRect bounds = canvas->getLocalClipBounds();
10     SkDebugf("left:%g  top:%g  right:%g  bottom:%g\n",
11             bounds.fLeft, bounds.fTop, bounds.fRight, bounds.fBottom);
12     SkPoint clipPoints[]  = {{30, 130}, {120, 130}, {120, 230} };
13     SkPath clipPath;
14     clipPath.addPoly(clipPoints, SK_ARRAY_COUNT(clipPoints), true);
15     canvas->clipPath(clipPath);
16     bounds = canvas->getLocalClipBounds();
17     SkDebugf("left:%g  top:%g  right:%g  bottom:%g\n",
18             bounds.fLeft, bounds.fTop, bounds.fRight, bounds.fBottom);
19     canvas->scale(2, 2);
20     bounds = canvas->getLocalClipBounds();
21     SkDebugf("left:%g  top:%g  right:%g  bottom:%g\n",
22             bounds.fLeft, bounds.fTop, bounds.fRight, bounds.fBottom);
23 }
24 }  // END FIDDLE
25