OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2011 Google Inc. | 3 * Copyright 2011 Google Inc. |
4 * | 4 * |
5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
7 */ | 7 */ |
8 #include "gm.h" | 8 #include "gm.h" |
9 #include "SkGradientShader.h" | 9 #include "SkGradientShader.h" |
10 | 10 |
11 namespace skiagm { | 11 namespace skiagm { |
12 | 12 |
13 class FillTypePerspGM : public GM { | 13 class FillTypePerspGM : public GM { |
14 SkPath fPath; | 14 SkPath fPath; |
15 public: | 15 public: |
16 FillTypePerspGM() {} | 16 FillTypePerspGM() {} |
17 | 17 |
18 void makePath() { | 18 void makePath() { |
19 if (fPath.isEmpty()) { | 19 if (fPath.isEmpty()) { |
20 const SkScalar radius = SkIntToScalar(45); | 20 const SkScalar radius = SkIntToScalar(45); |
21 fPath.addCircle(SkIntToScalar(50), SkIntToScalar(50), radius); | 21 fPath.addCircle(SkIntToScalar(50), SkIntToScalar(50), radius); |
22 fPath.addCircle(SkIntToScalar(100), SkIntToScalar(100), radius); | 22 fPath.addCircle(SkIntToScalar(100), SkIntToScalar(100), radius); |
23 } | 23 } |
24 } | 24 } |
25 | 25 |
26 protected: | 26 protected: |
27 | 27 |
28 SkString onShortName() SK_OVERRIDE { | 28 SkString onShortName() override { |
29 return SkString("filltypespersp"); | 29 return SkString("filltypespersp"); |
30 } | 30 } |
31 | 31 |
32 SkISize onISize() SK_OVERRIDE { | 32 SkISize onISize() override { |
33 return SkISize::Make(835, 840); | 33 return SkISize::Make(835, 840); |
34 } | 34 } |
35 | 35 |
36 void showPath(SkCanvas* canvas, int x, int y, SkPath::FillType ft, | 36 void showPath(SkCanvas* canvas, int x, int y, SkPath::FillType ft, |
37 SkScalar scale, const SkPaint& paint) { | 37 SkScalar scale, const SkPaint& paint) { |
38 const SkRect r = { 0, 0, SkIntToScalar(150), SkIntToScalar(150) }; | 38 const SkRect r = { 0, 0, SkIntToScalar(150), SkIntToScalar(150) }; |
39 | 39 |
40 canvas->save(); | 40 canvas->save(); |
41 canvas->translate(SkIntToScalar(x), SkIntToScalar(y)); | 41 canvas->translate(SkIntToScalar(x), SkIntToScalar(y)); |
42 canvas->clipRect(r); | 42 canvas->clipRect(r); |
(...skipping 23 matching lines...) Expand all Loading... |
66 showPath(canvas, 0, 0, SkPath::kWinding_FillType, | 66 showPath(canvas, 0, 0, SkPath::kWinding_FillType, |
67 scale, paint); | 67 scale, paint); |
68 showPath(canvas, 200, 0, SkPath::kEvenOdd_FillType, | 68 showPath(canvas, 200, 0, SkPath::kEvenOdd_FillType, |
69 scale, paint); | 69 scale, paint); |
70 showPath(canvas, 00, 200, SkPath::kInverseWinding_FillType, | 70 showPath(canvas, 00, 200, SkPath::kInverseWinding_FillType, |
71 scale, paint); | 71 scale, paint); |
72 showPath(canvas, 200, 200, SkPath::kInverseEvenOdd_FillType, | 72 showPath(canvas, 200, 200, SkPath::kInverseEvenOdd_FillType, |
73 scale, paint); | 73 scale, paint); |
74 } | 74 } |
75 | 75 |
76 void onDraw(SkCanvas* canvas) SK_OVERRIDE { | 76 void onDraw(SkCanvas* canvas) override { |
77 this->makePath(); | 77 this->makePath(); |
78 | 78 |
79 // do perspective drawPaint as the background; | 79 // do perspective drawPaint as the background; |
80 SkPaint bkgnrd; | 80 SkPaint bkgnrd; |
81 SkPoint center = SkPoint::Make(SkIntToScalar(100), | 81 SkPoint center = SkPoint::Make(SkIntToScalar(100), |
82 SkIntToScalar(100)); | 82 SkIntToScalar(100)); |
83 SkColor colors[] = {SK_ColorBLACK, SK_ColorCYAN, | 83 SkColor colors[] = {SK_ColorBLACK, SK_ColorCYAN, |
84 SK_ColorYELLOW, SK_ColorWHITE}; | 84 SK_ColorYELLOW, SK_ColorWHITE}; |
85 SkScalar pos[] = {0, SK_ScalarHalf / 2, | 85 SkScalar pos[] = {0, SK_ScalarHalf / 2, |
86 3 * SK_ScalarHalf / 2, SK_Scalar1}; | 86 3 * SK_ScalarHalf / 2, SK_Scalar1}; |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
123 private: | 123 private: |
124 typedef GM INHERITED; | 124 typedef GM INHERITED; |
125 }; | 125 }; |
126 | 126 |
127 ////////////////////////////////////////////////////////////////////////////// | 127 ////////////////////////////////////////////////////////////////////////////// |
128 | 128 |
129 static GM* MyFactory(void*) { return new FillTypePerspGM; } | 129 static GM* MyFactory(void*) { return new FillTypePerspGM; } |
130 static GMRegistry reg(MyFactory); | 130 static GMRegistry reg(MyFactory); |
131 | 131 |
132 } | 132 } |
OLD | NEW |