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

Side by Side Diff: gm/shaderbounds.cpp

Issue 85463005: remove SkFloatToScalar macro (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: add flag to expose SkFloatToScalar to chromium Created 7 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 | Annotate | Revision Log
« no previous file with comments | « gm/roundrects.cpp ('k') | gm/simpleaaclip.cpp » ('j') | 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 2012 Google Inc. 2 * Copyright 2012 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 #include "gm.h" 7 #include "gm.h"
8 #include "SkGradientShader.h" 8 #include "SkGradientShader.h"
9 9
10 namespace skiagm { 10 namespace skiagm {
(...skipping 23 matching lines...) Expand all
34 34
35 protected: 35 protected:
36 SkString onShortName() { 36 SkString onShortName() {
37 return fName; 37 return fName;
38 } 38 }
39 39
40 virtual SkISize onISize() { return make_isize(320, 240); } 40 virtual SkISize onISize() { return make_isize(320, 240); }
41 41
42 virtual SkMatrix onGetInitialTransform() const SK_OVERRIDE { 42 virtual SkMatrix onGetInitialTransform() const SK_OVERRIDE {
43 SkMatrix result; 43 SkMatrix result;
44 SkScalar scale = SkFloatToScalar(0.8f); 44 SkScalar scale = 0.8f;
45 result.setScale(scale, scale); 45 result.setScale(scale, scale);
46 result.postTranslate(SkIntToScalar(7), SkIntToScalar(23)); 46 result.postTranslate(SkIntToScalar(7), SkIntToScalar(23));
47 return result; 47 return result;
48 } 48 }
49 49
50 virtual void onDraw(SkCanvas* canvas) { 50 virtual void onDraw(SkCanvas* canvas) {
51 // The PDF device has already clipped to the content area, but we 51 // The PDF device has already clipped to the content area, but we
52 // do it again here so that the raster and pdf results are consistent. 52 // do it again here so that the raster and pdf results are consistent.
53 canvas->clipRect(SkRect::MakeWH(SkIntToScalar(320), 53 canvas->clipRect(SkRect::MakeWH(SkIntToScalar(320),
54 SkIntToScalar(240))); 54 SkIntToScalar(240)));
55 55
56 SkMatrix canvasScale; 56 SkMatrix canvasScale;
57 SkScalar scale = SkFloatToScalar(0.7f); 57 SkScalar scale = 0.7f;
58 canvasScale.setScale(scale, scale); 58 canvasScale.setScale(scale, scale);
59 canvas->concat(canvasScale); 59 canvas->concat(canvasScale);
60 60
61 // Background shader. 61 // Background shader.
62 SkPaint paint; 62 SkPaint paint;
63 paint.setShader(MakeShader(559, 387, false))->unref(); 63 paint.setShader(MakeShader(559, 387, false))->unref();
64 SkRect r = SkRect::MakeXYWH(SkIntToScalar(-12), SkIntToScalar(-41), 64 SkRect r = SkRect::MakeXYWH(SkIntToScalar(-12), SkIntToScalar(-41),
65 SkIntToScalar(571), SkIntToScalar(428)); 65 SkIntToScalar(571), SkIntToScalar(428));
66 canvas->drawRect(r, paint); 66 canvas->drawRect(r, paint);
67 67
68 // Constrained shader. 68 // Constrained shader.
69 paint.setShader(MakeShader(101, 151, true))->unref(); 69 paint.setShader(MakeShader(101, 151, true))->unref();
70 r = SkRect::MakeXYWH(SkIntToScalar(43), SkIntToScalar(71), 70 r = SkRect::MakeXYWH(SkIntToScalar(43), SkIntToScalar(71),
71 SkIntToScalar(101), SkIntToScalar(151)); 71 SkIntToScalar(101), SkIntToScalar(151));
72 canvas->clipRect(r); 72 canvas->clipRect(r);
73 canvas->drawRect(r, paint); 73 canvas->drawRect(r, paint);
74 } 74 }
75 75
76 SkShader* MakeShader(int width, int height, bool background) { 76 SkShader* MakeShader(int width, int height, bool background) {
77 SkScalar scale = SkFloatToScalar(0.5f); 77 SkScalar scale = 0.5f;
78 if (background) { 78 if (background) {
79 scale = SkFloatToScalar(0.6f); 79 scale = 0.6f;
80 } 80 }
81 SkScalar shaderWidth = SkScalarDiv(SkIntToScalar(width), scale); 81 SkScalar shaderWidth = SkScalarDiv(SkIntToScalar(width), scale);
82 SkScalar shaderHeight = SkScalarDiv(SkIntToScalar(height), scale); 82 SkScalar shaderHeight = SkScalarDiv(SkIntToScalar(height), scale);
83 SkShader* shader = fShaderMaker(shaderWidth, shaderHeight, background); 83 SkShader* shader = fShaderMaker(shaderWidth, shaderHeight, background);
84 SkMatrix shaderScale; 84 SkMatrix shaderScale;
85 shaderScale.setScale(scale, scale); 85 shaderScale.setScale(scale, scale);
86 shader->setLocalMatrix(shaderScale); 86 shader->setLocalMatrix(shaderScale);
87 return shader; 87 return shader;
88 } 88 }
89 89
90 private: 90 private:
91 typedef GM INHERITED; 91 typedef GM INHERITED;
92 92
93 ShaderGenFunc fShaderMaker; 93 ShaderGenFunc fShaderMaker;
94 SkString fName; 94 SkString fName;
95 95
96 SkShader* MakeShader(bool background); 96 SkShader* MakeShader(bool background);
97 }; 97 };
98 98
99 /////////////////////////////////////////////////////////////////////////////// 99 ///////////////////////////////////////////////////////////////////////////////
100 100
101 static GM* MyFactory(void*) { 101 static GM* MyFactory(void*) {
102 return new ShaderBoundsGM(MakeLinear, SkString("shaderbounds_linear")); 102 return new ShaderBoundsGM(MakeLinear, SkString("shaderbounds_linear"));
103 } 103 }
104 static GMRegistry reg(MyFactory); 104 static GMRegistry reg(MyFactory);
105 105
106 } 106 }
OLDNEW
« no previous file with comments | « gm/roundrects.cpp ('k') | gm/simpleaaclip.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698