OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2015 Google Inc. | 2 * Copyright 2015 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 | 9 |
10 #include "SkShader.h" | 10 #include "SkShader.h" |
11 | 11 |
12 // This class of GMs test how edges/verts snap near rounding boundaries in devic
e space without | 12 // This class of GMs test how edges/verts snap near rounding boundaries in devic
e space without |
13 // anti-aliaing. | 13 // anti-aliaing. |
14 class PixelSnapGM : public skiagm::GM { | 14 class PixelSnapGM : public skiagm::GM { |
15 public: | 15 public: |
16 PixelSnapGM() {} | 16 PixelSnapGM() {} |
17 | 17 |
18 protected: | 18 protected: |
19 // kTrans should be even or checkboards wont agree in different test cases. | 19 // kTrans should be even or checkboards wont agree in different test cases. |
20 static const int kTrans = 14; | 20 static constexpr int kTrans = 14; |
21 static const int kLabelPad = 4; | 21 static constexpr int kLabelPad = 4; |
22 // The inverse of this value should be a perfect SkScalar. | 22 // The inverse of this value should be a perfect SkScalar. |
23 static const int kSubPixelSteps = 8; | 23 static constexpr int kSubPixelSteps = 8; |
24 static const int kLabelTextSize = 9; | 24 static constexpr int kLabelTextSize = 9; |
25 | 25 |
26 static_assert(kSubPixelSteps < 99, "label_offset_too_small"); | 26 static_assert(kSubPixelSteps < 99, "label_offset_too_small"); |
27 static const int kLabelOffsetX = 2 * kLabelTextSize + kLabelPad; | 27 static constexpr int kLabelOffsetX = 2 * kLabelTextSize + kLabelPad; |
28 static const int kLabelOffsetY = kLabelTextSize + kLabelPad; | 28 static constexpr int kLabelOffsetY = kLabelTextSize + kLabelPad; |
29 | 29 |
30 SkISize onISize() override { | 30 SkISize onISize() override { |
31 return SkISize::Make((kSubPixelSteps + 1) * kTrans + kLabelOffsetX + kLa
belPad, | 31 return SkISize::Make((kSubPixelSteps + 1) * kTrans + kLabelOffsetX + kLa
belPad, |
32 (kSubPixelSteps + 1) * kTrans + kLabelOffsetY + kLa
belPad); | 32 (kSubPixelSteps + 1) * kTrans + kLabelOffsetY + kLa
belPad); |
33 } | 33 } |
34 | 34 |
35 void onDraw(SkCanvas* canvas) override { | 35 void onDraw(SkCanvas* canvas) override { |
36 SkPaint bgPaint; | 36 SkPaint bgPaint; |
37 bgPaint.setShader( | 37 bgPaint.setShader( |
38 sk_tool_utils::create_checkerboard_shader( | 38 sk_tool_utils::create_checkerboard_shader( |
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
172 | 172 |
173 private: | 173 private: |
174 typedef PixelSnapGM INHERITED; | 174 typedef PixelSnapGM INHERITED; |
175 }; | 175 }; |
176 | 176 |
177 ////////////////////////////////////////////////////////////////////////////// | 177 ////////////////////////////////////////////////////////////////////////////// |
178 DEF_GM(return new PointSnapGM;) | 178 DEF_GM(return new PointSnapGM;) |
179 DEF_GM(return new LineSnapGM;) | 179 DEF_GM(return new LineSnapGM;) |
180 DEF_GM(return new RectSnapGM;) | 180 DEF_GM(return new RectSnapGM;) |
181 DEF_GM(return new ComboSnapGM;) | 181 DEF_GM(return new ComboSnapGM;) |
OLD | NEW |