| Index: gm/filterbitmap.cpp
|
| diff --git a/gm/filterbitmap.cpp b/gm/filterbitmap.cpp
|
| index 1ec6c8f378b8331195ef6869af61abf2e3c8dfc4..efe4d4aa2b5cabd5144538742e05262a84c628f8 100644
|
| --- a/gm/filterbitmap.cpp
|
| +++ b/gm/filterbitmap.cpp
|
| @@ -23,8 +23,7 @@ static SkSize computeSize(const SkBitmap& bm, const SkMatrix& mat) {
|
| return SkSize::Make(bounds.width(), bounds.height());
|
| }
|
|
|
| -static void draw_col(SkCanvas* canvas, const SkBitmap& bm, const SkMatrix& mat,
|
| - SkScalar dx) {
|
| +static void draw_row(SkCanvas* canvas, const SkBitmap& bm, const SkMatrix& mat, SkScalar dx) {
|
| SkPaint paint;
|
|
|
| SkAutoCanvasRestore acr(canvas, true);
|
| @@ -35,6 +34,10 @@ static void draw_col(SkCanvas* canvas, const SkBitmap& bm, const SkMatrix& mat,
|
| canvas->translate(dx, 0);
|
| canvas->drawBitmapMatrix(bm, mat, &paint);
|
|
|
| + paint.setFilterLevel(SkPaint::kMedium_FilterLevel);
|
| + canvas->translate(dx, 0);
|
| + canvas->drawBitmapMatrix(bm, mat, &paint);
|
| +
|
| paint.setFilterLevel(SkPaint::kHigh_FilterLevel);
|
| canvas->translate(dx, 0);
|
| canvas->drawBitmapMatrix(bm, mat, &paint);
|
| @@ -43,20 +46,23 @@ static void draw_col(SkCanvas* canvas, const SkBitmap& bm, const SkMatrix& mat,
|
| class FilterBitmapGM : public skiagm::GM {
|
| void onOnceBeforeDraw() {
|
|
|
| - make_bitmap();
|
| + this->makeBitmap();
|
|
|
| SkScalar cx = SkScalarHalf(fBM.width());
|
| SkScalar cy = SkScalarHalf(fBM.height());
|
| - SkScalar scale = get_scale();
|
| -
|
| + SkScalar scale = this->getScale();
|
|
|
| + // these two matrices use a scale factor configured by the subclass
|
| fMatrix[0].setScale(scale, scale);
|
| fMatrix[1].setRotate(30, cx, cy); fMatrix[1].postScale(scale, scale);
|
| +
|
| + // up/down scaling mix
|
| + fMatrix[2].setScale(0.7f, 1.05f);
|
| }
|
|
|
| public:
|
| SkBitmap fBM;
|
| - SkMatrix fMatrix[2];
|
| + SkMatrix fMatrix[3];
|
| SkString fName;
|
|
|
| FilterBitmapGM()
|
| @@ -70,11 +76,11 @@ protected:
|
| }
|
|
|
| virtual SkISize onISize() SK_OVERRIDE {
|
| - return SkISize::Make(920, 480);
|
| + return SkISize::Make(1024, 768);
|
| }
|
|
|
| - virtual void make_bitmap() = 0;
|
| - virtual SkScalar get_scale() = 0;
|
| + virtual void makeBitmap() = 0;
|
| + virtual SkScalar getScale() = 0;
|
|
|
| virtual void onDraw(SkCanvas* canvas) SK_OVERRIDE {
|
|
|
| @@ -84,7 +90,7 @@ protected:
|
| size.fWidth += 20;
|
| size.fHeight += 20;
|
|
|
| - draw_col(canvas, fBM, fMatrix[i], size.fWidth);
|
| + draw_row(canvas, fBM, fMatrix[i], size.fWidth);
|
| canvas->translate(0, size.fHeight);
|
| }
|
| }
|
| @@ -104,11 +110,11 @@ class FilterBitmapTextGM: public FilterBitmapGM {
|
| protected:
|
| float fTextSize;
|
|
|
| - SkScalar get_scale() SK_OVERRIDE {
|
| + SkScalar getScale() SK_OVERRIDE {
|
| return 32.f/fTextSize;
|
| }
|
|
|
| - void make_bitmap() SK_OVERRIDE {
|
| + void makeBitmap() SK_OVERRIDE {
|
| fBM.setConfig(SkBitmap::kARGB_8888_Config, int(fTextSize * 8), int(fTextSize * 6));
|
| fBM.allocPixels();
|
| SkCanvas canvas(fBM);
|
| @@ -144,11 +150,11 @@ class FilterBitmapCheckerboardGM: public FilterBitmapGM {
|
| int fSize;
|
| int fNumChecks;
|
|
|
| - SkScalar get_scale() SK_OVERRIDE {
|
| + SkScalar getScale() SK_OVERRIDE {
|
| return 192.f/fSize;
|
| }
|
|
|
| - void make_bitmap() SK_OVERRIDE {
|
| + void makeBitmap() SK_OVERRIDE {
|
| fBM.setConfig(SkBitmap::kARGB_8888_Config, fSize, fSize);
|
| fBM.allocPixels();
|
| SkAutoLockPixels lock(fBM);
|
| @@ -181,11 +187,11 @@ class FilterBitmapImageGM: public FilterBitmapGM {
|
| SkString fFilename;
|
| int fSize;
|
|
|
| - SkScalar get_scale() SK_OVERRIDE {
|
| + SkScalar getScale() SK_OVERRIDE {
|
| return 192.f/fSize;
|
| }
|
|
|
| - void make_bitmap() SK_OVERRIDE {
|
| + void makeBitmap() SK_OVERRIDE {
|
| SkString path(skiagm::GM::gResourcePath);
|
| path.append("/");
|
| path.append(fFilename);
|
|
|