aboutsummaryrefslogtreecommitdiffhomepage
path: root/gm/imageblurclampmode.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'gm/imageblurclampmode.cpp')
-rw-r--r--gm/imageblurclampmode.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/gm/imageblurclampmode.cpp b/gm/imageblurclampmode.cpp
index 51109c5cff..74bed43b2b 100644
--- a/gm/imageblurclampmode.cpp
+++ b/gm/imageblurclampmode.cpp
@@ -61,29 +61,34 @@ protected:
void onDraw(SkCanvas* canvas) override {
sk_sp<SkImage> image(make_image(canvas));
+ sk_sp<SkImageFilter> filter;
canvas->translate(0, 30);
// Test different kernel size, including the one to launch 2d Gaussian
// blur.
for (auto sigma: { 0.6f, 3.0f, 8.0f, 20.0f }) {
canvas->save();
- sk_sp<SkImageFilter> filter(
- SkBlurImageFilter::Make(sigma, 0.0f, nullptr, nullptr,
- SkBlurImageFilter::kClamp_TileMode));
+
+ // x-only blur
+ filter = SkBlurImageFilter::Make(sigma, 0.0f, nullptr, nullptr,
+ SkBlurImageFilter::kClamp_TileMode);
draw_image(canvas, image, std::move(filter));
canvas->translate(image->width() + 20, 0);
+ // y-only blur
filter = SkBlurImageFilter::Make(0.0f, sigma, nullptr, nullptr,
SkBlurImageFilter::kClamp_TileMode);
draw_image(canvas, image, std::move(filter));
canvas->translate(image->width() + 20, 0);
+ // both directions
filter = SkBlurImageFilter::Make(sigma, sigma, nullptr, nullptr,
SkBlurImageFilter::kClamp_TileMode);
draw_image(canvas, image, std::move(filter));
canvas->translate(image->width() + 20, 0);
canvas->restore();
+
canvas->translate(0, image->height() + 20);
}
}