| OLD | NEW | 
|    1 /* |    1 /* | 
|    2  * Copyright 2016 Google Inc. |    2  * Copyright 2016 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 "SkBlurMaskFilter.h" |    9 #include "SkBlurMaskFilter.h" | 
|   10 #include "SkRRect.h" |   10 #include "SkRRect.h" | 
| (...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  142     dist -= 10.0f; |  142     dist -= 10.0f; | 
|  143     SkRRect occRR = SkRRect::MakeOval( |  143     SkRRect occRR = SkRRect::MakeOval( | 
|  144                             offset_center_to(r, center.fX + dist*v.fX, center.fY
      + dist*v.fY)); |  144                             offset_center_to(r, center.fX + dist*v.fX, center.fY
      + dist*v.fY)); | 
|  145  |  145  | 
|  146     draw_rrect(canvas, rr, occRR); |  146     draw_rrect(canvas, rr, occRR); | 
|  147 } |  147 } | 
|  148  |  148  | 
|  149 static void draw_90_simple(SkCanvas* canvas, const SkVector& v, |  149 static void draw_90_simple(SkCanvas* canvas, const SkVector& v, | 
|  150                            SkScalar dist, const SkPoint& center) { |  150                            SkScalar dist, const SkPoint& center) { | 
|  151     static const int kLength = 128; |  151     static const int kLength = 128; | 
|  152     static const int kWidth = 32; |  152     // The width needs to be larger than 2*3*blurRadii+2*cornerRadius for the an
     alytic | 
 |  153     // RRect blur to kick in | 
 |  154     static const int kWidth = 47; | 
|  153  |  155  | 
|  154     SkIRect r; |  156     SkIRect r; | 
|  155     if (fabs(v.fX) < fabs(v.fY)) { |  157     if (fabs(v.fX) < fabs(v.fY)) { | 
|  156         r = SkIRect::MakeWH(kLength, kWidth); |  158         r = SkIRect::MakeWH(kLength, kWidth); | 
|  157     } else { |  159     } else { | 
|  158         r = SkIRect::MakeWH(kWidth, kLength); |  160         r = SkIRect::MakeWH(kWidth, kLength); | 
|  159     } |  161     } | 
|  160     SkRRect rr = SkRRect::MakeRectXY( |  162     SkRRect rr = SkRRect::MakeRectXY( | 
|  161                             offset_center_to(r, center.fX + dist*v.fX, center.fY
      + dist*v.fY), |  163                             offset_center_to(r, center.fX + dist*v.fX, center.fY
      + dist*v.fY), | 
|  162                             8, 8); |  164                             8, 8); | 
| (...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  286                    SkVector::Make(-0.5f, -kRoot3Over2), 120, center); |  288                    SkVector::Make(-0.5f, -kRoot3Over2), 120, center); | 
|  287         draw_30_60(canvas, SkRRect::kUpperRight_Corner, |  289         draw_30_60(canvas, SkRRect::kUpperRight_Corner, | 
|  288                    SkVector::Make(-kRoot3Over2, -0.5f), 120, center); |  290                    SkVector::Make(-kRoot3Over2, -0.5f), 120, center); | 
|  289  |  291  | 
|  290         draw_30_60(canvas, SkRRect::kUpperLeft_Corner, |  292         draw_30_60(canvas, SkRRect::kUpperLeft_Corner, | 
|  291                    SkVector::Make(0.5f, -kRoot3Over2), 120, center); |  293                    SkVector::Make(0.5f, -kRoot3Over2), 120, center); | 
|  292         draw_30_60(canvas, SkRRect::kLowerRight_Corner, |  294         draw_30_60(canvas, SkRRect::kLowerRight_Corner, | 
|  293                    SkVector::Make(kRoot3Over2, -0.5f), 120, center); |  295                    SkVector::Make(kRoot3Over2, -0.5f), 120, center); | 
|  294  |  296  | 
|  295         draw_45_simple(canvas, SkVector::Make(-SK_ScalarRoot2Over2, -SK_ScalarRo
     ot2Over2), |  297         draw_45_simple(canvas, SkVector::Make(-SK_ScalarRoot2Over2, -SK_ScalarRo
     ot2Over2), | 
|  296                        190, center); |  298                        210, center); | 
|  297         draw_45_simple(canvas, SkVector::Make(SK_ScalarRoot2Over2, -SK_ScalarRoo
     t2Over2), |  299         draw_45_simple(canvas, SkVector::Make(SK_ScalarRoot2Over2, -SK_ScalarRoo
     t2Over2), | 
|  298                        190, center); |  300                        210, center); | 
|  299         draw_45_simple(canvas, SkVector::Make(SK_ScalarRoot2Over2, SK_ScalarRoot
     2Over2), |  301         draw_45_simple(canvas, SkVector::Make(SK_ScalarRoot2Over2, SK_ScalarRoot
     2Over2), | 
|  300                        190, center); |  302                        210, center); | 
|  301         draw_45_simple(canvas, SkVector::Make(-SK_ScalarRoot2Over2, SK_ScalarRoo
     t2Over2), |  303         draw_45_simple(canvas, SkVector::Make(-SK_ScalarRoot2Over2, SK_ScalarRoo
     t2Over2), | 
|  302                        190, center); |  304                        210, center); | 
|  303  |  305  | 
|  304         draw_90_simple(canvas, SkVector::Make(-1.0f, 0.0f), 150, center); |  306         draw_90_simple(canvas, SkVector::Make(-1.0f, 0.0f), 160, center); | 
|  305         draw_90_simple(canvas, SkVector::Make(0.0f, -1.0f), 150, center); |  307         draw_90_simple(canvas, SkVector::Make(0.0f, -1.0f), 160, center); | 
|  306         draw_90_simple(canvas, SkVector::Make(1.0f, 0.0f), 150, center); |  308         draw_90_simple(canvas, SkVector::Make(1.0f, 0.0f), 160, center); | 
|  307         draw_90_simple(canvas, SkVector::Make(0.0f, 1.0f), 150, center); |  309         draw_90_simple(canvas, SkVector::Make(0.0f, 1.0f), 160, center); | 
|  308     } |  310     } | 
|  309  |  311  | 
|  310 private: |  312 private: | 
|  311     static const int kWidth = 440; |  313     static const int kWidth = 440; | 
|  312     static const int kHeight = 440; |  314     static const int kHeight = 440; | 
|  313  |  315  | 
|  314     typedef GM INHERITED; |  316     typedef GM INHERITED; | 
|  315 }; |  317 }; | 
|  316  |  318  | 
|  317 ////////////////////////////////////////////////////////////////////////////// |  319 ////////////////////////////////////////////////////////////////////////////// | 
|  318  |  320  | 
|  319 DEF_GM(return new OccludedRRectBlurGM;) |  321 DEF_GM(return new OccludedRRectBlurGM;) | 
|  320 } |  322 } | 
| OLD | NEW |