diff options
author | reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2009-09-18 20:57:05 +0000 |
---|---|---|
committer | reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2009-09-18 20:57:05 +0000 |
commit | da449a38a2ac06f47f504cef7897afe322981dae (patch) | |
tree | 8c1d0b1f40b443dcd1b592076a97be683e271041 /samplecode/SampleBlur.cpp | |
parent | 0e3c664250f561ec9f7107b92136517a72d03afd (diff) |
update with tests for blur
git-svn-id: http://skia.googlecode.com/svn/trunk@357 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'samplecode/SampleBlur.cpp')
-rw-r--r-- | samplecode/SampleBlur.cpp | 29 |
1 files changed, 24 insertions, 5 deletions
diff --git a/samplecode/SampleBlur.cpp b/samplecode/SampleBlur.cpp index 13bf10ad19..7377d68b81 100644 --- a/samplecode/SampleBlur.cpp +++ b/samplecode/SampleBlur.cpp @@ -63,14 +63,33 @@ protected: virtual void onDraw(SkCanvas* canvas) { drawBG(canvas); + + SkBlurMaskFilter::BlurStyle NONE = SkBlurMaskFilter::BlurStyle(-999); + static const struct { + SkBlurMaskFilter::BlurStyle fStyle; + int fCx, fCy; + } gRecs[] = { + { NONE, 0, 0 }, + { SkBlurMaskFilter::kInner_BlurStyle, -1, 0 }, + { SkBlurMaskFilter::kNormal_BlurStyle, 0, 1 }, + { SkBlurMaskFilter::kSolid_BlurStyle, 0, -1 }, + { SkBlurMaskFilter::kOuter_BlurStyle, 1, 0 }, + }; - SkMaskFilter* mf = SkBlurMaskFilter::Create(20, SkBlurMaskFilter::kOuter_BlurStyle); SkPaint paint; paint.setAntiAlias(true); - - canvas->drawCircle(100, 100, 50, paint); - paint.setMaskFilter(mf)->unref(); - canvas->drawCircle(200, 100, 50, paint); + paint.setColor(SK_ColorBLUE); + + for (size_t i = 0; i < SK_ARRAY_COUNT(gRecs); i++) { + if (gRecs[i].fStyle != NONE) { + SkMaskFilter* mf = SkBlurMaskFilter::Create(20, gRecs[i].fStyle); + paint.setMaskFilter(mf)->unref(); + } else { + paint.setMaskFilter(NULL); + } + canvas->drawCircle(200 + gRecs[i].fCx*100, + 200 + gRecs[i].fCy*100, 50, paint); + } } private: |