diff options
author | 2016-04-19 14:02:52 -0700 | |
---|---|---|
committer | 2016-04-19 14:02:52 -0700 | |
commit | 51dece33e8b9e3914b0b90086f4b2e97c17333dd (patch) | |
tree | 6b38ddd31d0f3dab4b65d6c23551eb695a8132ea /gm | |
parent | 4311f016612a814282029daa4bd102053a853d82 (diff) |
add gm to exercise rotated imagefiltesr w/ and w/o antialiasing
BUG=skia:3288
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1902253003
Review URL: https://codereview.chromium.org/1902253003
Diffstat (limited to 'gm')
-rw-r--r-- | gm/imagefilterstransformed.cpp | 42 |
1 files changed, 41 insertions, 1 deletions
diff --git a/gm/imagefilterstransformed.cpp b/gm/imagefilterstransformed.cpp index ce7ba5d6e0..7ceff00135 100644 --- a/gm/imagefilterstransformed.cpp +++ b/gm/imagefilterstransformed.cpp @@ -113,9 +113,49 @@ private: sk_sp<SkImage> fGradientCircle; typedef GM INHERITED; }; +DEF_GM( return new ImageFiltersTransformedGM; ) +} ////////////////////////////////////////////////////////////////////////////// +#include "SkXfermodeImageFilter.h" -DEF_GM( return new ImageFiltersTransformedGM; ) +DEF_SIMPLE_GM(rotate_imagefilter, canvas, 500, 500) { + SkPaint paint; + const SkRect r = SkRect::MakeXYWH(50, 50, 100, 100); + + sk_sp<SkImageFilter> filters[] = { + nullptr, + SkBlurImageFilter::Make(6, 0, nullptr), + SkXfermodeImageFilter::Make(SkXfermode::Make(SkXfermode::kSrcOver_Mode), nullptr), + }; + + for (auto& filter : filters) { + paint.setAntiAlias(false); + paint.setImageFilter(filter); + + canvas->save(); + + canvas->drawRect(r, paint); + + canvas->translate(150, 0); + canvas->save(); + canvas->translate(100, 100); + canvas->rotate(30); + canvas->translate(-100, -100); + canvas->drawRect(r, paint); + canvas->restore(); + + paint.setAntiAlias(true); + canvas->translate(150, 0); + canvas->save(); + canvas->translate(100, 100); + canvas->rotate(30); + canvas->translate(-100, -100); + canvas->drawRect(r, paint); + canvas->restore(); + + canvas->restore(); + canvas->translate(0, 150); + } } |