22 float cx = (rect.left() + rect.right() )/2.f;
23 float cy = (rect.top() + rect.bottom())/2.f;
35 paint.setShader(std::move(g));
constexpr SkColor SK_ColorBLUE
constexpr SkColor SK_ColorRED
constexpr SkColor SK_ColorGREEN
int saveLayer(const SkRect *bounds, const SkPaint *paint)
void drawRect(const SkRect &rect, const SkPaint &paint)
static sk_sp< SkShader > MakeSweep(SkScalar cx, SkScalar cy, const SkColor colors[], const SkScalar pos[], int count, SkTileMode mode, SkScalar startAngle, SkScalar endAngle, uint32_t flags, const SkMatrix *localMatrix)
static sk_sp< SkImageFilter > Blur(SkScalar sigmaX, SkScalar sigmaY, SkTileMode tileMode, sk_sp< SkImageFilter > input, const CropRect &cropRect={})
static void draw_bg_blur(SkCanvas *canvas, SkIRect rect, float sigma)
#define DEF_SIMPLE_GM(NAME, CANVAS, W, H)
const SkImageFilter * fBackdrop
static constexpr SkIRect MakeXYWH(int32_t x, int32_t y, int32_t w, int32_t h)
static SkRect Make(const SkISize &size)
SkRect makeOutset(float dx, float dy) const