Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1018)

Side by Side Diff: gm/filterfastbounds.cpp

Issue 1500373004: Add SkTileImageFilter sample to filterfastbounds GM. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2014 Google Inc. 2 * Copyright 2014 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include "gm.h" 8 #include "gm.h"
9 #include "SkBlurImageFilter.h" 9 #include "SkBlurImageFilter.h"
10 #include "SkDropShadowImageFilter.h" 10 #include "SkDropShadowImageFilter.h"
11 #include "SkImageSource.h" 11 #include "SkImageSource.h"
12 #include "SkOffsetImageFilter.h" 12 #include "SkOffsetImageFilter.h"
13 #include "SkPictureImageFilter.h" 13 #include "SkPictureImageFilter.h"
14 #include "SkPictureRecorder.h" 14 #include "SkPictureRecorder.h"
15 #include "SkRandom.h" 15 #include "SkRandom.h"
16 #include "SkSurface.h" 16 #include "SkSurface.h"
17 #include "SkTileImageFilter.h"
17 18
18 namespace skiagm { 19 namespace skiagm {
19 20
20 // Each method of this type must draw its geometry inside 'r' using 'p' 21 // Each method of this type must draw its geometry inside 'r' using 'p'
21 typedef void(*drawMth)(SkCanvas* canvas, const SkRect& r, const SkPaint& p); 22 typedef void(*drawMth)(SkCanvas* canvas, const SkRect& r, const SkPaint& p);
22 23
23 static void draw_rect(SkCanvas* canvas, const SkRect& r, const SkPaint& p) { 24 static void draw_rect(SkCanvas* canvas, const SkRect& r, const SkPaint& p) {
24 canvas->drawRect(r, p); 25 canvas->drawRect(r, p);
25 } 26 }
26 27
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
103 SkMatrix rot; 104 SkMatrix rot;
104 rot.setRotate(-33.3f); 105 rot.setRotate(-33.3f);
105 106
106 SkAutoTUnref<SkImageFilter> rotMIF( 107 SkAutoTUnref<SkImageFilter> rotMIF(
107 SkImageFilter::CreateMatrixFilter(rot, kLow_SkFilterQuality, source) ); 108 SkImageFilter::CreateMatrixFilter(rot, kLow_SkFilterQuality, source) );
108 109
109 add_paint(rotMIF, paints); 110 add_paint(rotMIF, paints);
110 } 111 }
111 112
112 { 113 {
114 SkRect src = SkRect::MakeXYWH(20, 20, 10, 10);
115 SkRect dst = SkRect::MakeXYWH(30, 30, 30, 30);
116 SkAutoTUnref<SkImageFilter> tileIF(
117 SkTileImageFilter::Create(src, dst, nullptr));
118
119 add_paint(tileIF, paints);
120 }
121
122 {
113 static const SkDropShadowImageFilter::ShadowMode kBoth = 123 static const SkDropShadowImageFilter::ShadowMode kBoth =
114 SkDropShadowImageFilter::kDrawShadowAndForeground_ShadowMode ; 124 SkDropShadowImageFilter::kDrawShadowAndForeground_ShadowMode ;
115 125
116 SkAutoTUnref<SkImageFilter> dsif( 126 SkAutoTUnref<SkImageFilter> dsif(
117 SkDropShadowImageFilter::Create(10.0f, 10.0f, 127 SkDropShadowImageFilter::Create(10.0f, 10.0f,
118 3.0f, 3.0f, 128 3.0f, 3.0f,
119 SK_ColorRED, kBoth, 129 SK_ColorRED, kBoth,
120 source, nullptr)); 130 source, nullptr));
121 131
122 add_paint(dsif, paints); 132 add_paint(dsif, paints);
(...skipping 27 matching lines...) Expand all
150 // and image filter 160 // and image filter
151 class ImageFilterFastBoundGM : public GM { 161 class ImageFilterFastBoundGM : public GM {
152 public: 162 public:
153 ImageFilterFastBoundGM() { 163 ImageFilterFastBoundGM() {
154 this->setBGColor(sk_tool_utils::color_to_565(0xFFCCCCCC)); 164 this->setBGColor(sk_tool_utils::color_to_565(0xFFCCCCCC));
155 } 165 }
156 166
157 protected: 167 protected:
158 static const int kTileWidth = 100; 168 static const int kTileWidth = 100;
159 static const int kTileHeight = 100; 169 static const int kTileHeight = 100;
160 static const int kNumVertTiles = 6; 170 static const int kNumVertTiles = 7;
161 static const int kNumXtraCols = 2; 171 static const int kNumXtraCols = 2;
162 172
163 SkString onShortName() override{ return SkString("filterfastbounds"); } 173 SkString onShortName() override{ return SkString("filterfastbounds"); }
164 174
165 SkISize onISize() override{ 175 SkISize onISize() override{
166 return SkISize::Make((SK_ARRAY_COUNT(gDrawMthds) + kNumXtraCols) * kTile Width, 176 return SkISize::Make((SK_ARRAY_COUNT(gDrawMthds) + kNumXtraCols) * kTile Width,
167 kNumVertTiles * kTileHeight); 177 kNumVertTiles * kTileHeight);
168 } 178 }
169 179
170 static void draw_geom_with_paint(drawMth draw, const SkIPoint& off, 180 static void draw_geom_with_paint(drawMth draw, const SkIPoint& off,
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after
317 } 327 }
318 328
319 private: 329 private:
320 typedef GM INHERITED; 330 typedef GM INHERITED;
321 }; 331 };
322 332
323 ////////////////////////////////////////////////////////////////////////////// 333 //////////////////////////////////////////////////////////////////////////////
324 334
325 DEF_GM(return new ImageFilterFastBoundGM;) 335 DEF_GM(return new ImageFilterFastBoundGM;)
326 } 336 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698