aboutsummaryrefslogtreecommitdiffhomepage
path: root/gm
diff options
context:
space:
mode:
authorGravatar robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2012-09-28 17:24:44 +0000
committerGravatar robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2012-09-28 17:24:44 +0000
commit67d91be9bb64c532452f9d9d67b20f492ea0ad57 (patch)
tree9cc17814d305f4b00e73086083594b83c073a252 /gm
parentcca3c8f21b80f515a236a4b0d1e1f0b6418fcc97 (diff)
Added additional case to GM:drawbitmapmatrix
https://codereview.appspot.com/6573067/ This require re-baselining of all drawbitmapmatrix images! git-svn-id: http://skia.googlecode.com/svn/trunk@5723 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'gm')
-rw-r--r--gm/bitmapmatrix.cpp28
1 files changed, 28 insertions, 0 deletions
diff --git a/gm/bitmapmatrix.cpp b/gm/bitmapmatrix.cpp
index d05dbebd2f..ad1329b574 100644
--- a/gm/bitmapmatrix.cpp
+++ b/gm/bitmapmatrix.cpp
@@ -7,6 +7,7 @@
*/
#include "gm.h"
#include "SkBitmap.h"
+#include "SkBlurMaskFilter.h"
#include "SkCanvas.h"
#include "SkColor.h"
#include "SkMatrix.h"
@@ -73,6 +74,33 @@ protected:
matrix.reset();
matrix.setSinCos(SK_ScalarHalf, SkIntToScalar(2));
canvas->drawBitmapMatrix(bm, matrix, &paint);
+
+ {
+ // test the following code path:
+ // SkGpuDevice::drawPath() -> SkGpuDevice::drawWithMaskFilter()
+ SkPaint paint;
+
+ paint.setFilterBitmap(true);
+
+ SkMaskFilter* mf = SkBlurMaskFilter::Create(
+ 5,
+ SkBlurMaskFilter::kNormal_BlurStyle,
+ SkBlurMaskFilter::kHighQuality_BlurFlag |
+ SkBlurMaskFilter::kIgnoreTransform_BlurFlag);
+ paint.setMaskFilter(mf)->unref();
+
+ canvas->translate(SkIntToScalar(bm.width()*2 + 20), 0);
+
+ matrix.reset();
+ matrix.setRotate(SkIntToScalar(45), SkIntToScalar(bm.width() / 2),
+ SkIntToScalar(bm.height() / 2));
+
+ canvas->save();
+ canvas->translate(0, SkIntToScalar(20));
+ canvas->drawBitmapMatrix(bm, matrix, &paint);
+ canvas->restore();
+ }
+
}
private:
void setupBitmap(SkBitmap* bm) {