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=41638d13e40fa449ece354dde5fb1941 5REG_FIDDLE(Path_conservativelyContainsRect, 256, 140, false, 0) { 6void draw(SkCanvas* canvas) { 7 SkPath path; 8 path.addRoundRect({10, 20, 54, 120}, 10, 20); 9 SkRect tests[] = { 10 { 10, 40, 54, 80 }, 11 { 25, 20, 39, 120 }, 12 { 15, 25, 49, 115 }, 13 { 13, 27, 51, 113 }, 14 }; 15 for (unsigned i = 0; i < SK_ARRAY_COUNT(tests); ++i) { 16 SkPaint paint; 17 paint.setColor(SK_ColorRED); 18 canvas->drawPath(path, paint); 19 bool rectInPath = path.conservativelyContainsRect(tests[i]); 20 paint.setColor(rectInPath ? SK_ColorBLUE : SK_ColorBLACK); 21 canvas->drawRect(tests[i], paint); 22 canvas->translate(64, 0); 23 } 24} 25} // END FIDDLE 26