| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2006 The Android Open Source Project | 2 * Copyright 2006 The Android Open Source Project |
| 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 #ifndef SkBlurMaskFilter_DEFINED | 8 #ifndef SkBlurMaskFilter_DEFINED |
| 9 #define SkBlurMaskFilter_DEFINED | 9 #define SkBlurMaskFilter_DEFINED |
| 10 | 10 |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 47 @param ambient 0...1 amount of ambient light | 47 @param ambient 0...1 amount of ambient light |
| 48 @param specular coefficient for specular highlights (e.g. 8) | 48 @param specular coefficient for specular highlights (e.g. 8) |
| 49 @param blurRadius amount to blur before applying lighting (e.g. 3) | 49 @param blurRadius amount to blur before applying lighting (e.g. 3) |
| 50 @return the emboss maskfilter | 50 @return the emboss maskfilter |
| 51 */ | 51 */ |
| 52 static SkMaskFilter* CreateEmboss( const SkScalar direction[3], | 52 static SkMaskFilter* CreateEmboss( const SkScalar direction[3], |
| 53 SkScalar ambient, SkScalar specular, | 53 SkScalar ambient, SkScalar specular, |
| 54 SkScalar blurRadius); | 54 SkScalar blurRadius); |
| 55 | 55 |
| 56 SK_DECLARE_FLATTENABLE_REGISTRAR_GROUP() | 56 SK_DECLARE_FLATTENABLE_REGISTRAR_GROUP() |
| 57 |
| 58 // This constant approximates the scaling done in the software path's |
| 59 // "high quality" mode, in SkBlurMask::Blur() (1 / sqrt(3)). |
| 60 // IMHO, it actually should be 1: we blur "less" than we should do |
| 61 // according to the CSS and canvas specs, simply because Safari does the sam
e. |
| 62 // Firefox used to do the same too, until 4.0 where they fixed it. So at so
me |
| 63 // point we should probably get rid of these scaling constants and rebaselin
e |
| 64 // all the blur tests. |
| 65 static const SkScalar kBLUR_SIGMA_SCALE; |
| 66 |
| 67 // scale factor for the blur radius to match the behavior of the all existin
g blur |
| 68 // code (both on the CPU and the GPU). This magic constant is 1/sqrt(3). |
| 69 // TODO: get rid of this fudge factor and move any required fudging up into |
| 70 // the calling library |
| 71 static const SkScalar kBlurRadiusFudgeFactor; |
| 72 |
| 57 private: | 73 private: |
| 58 SkBlurMaskFilter(); // can't be instantiated | 74 SkBlurMaskFilter(); // can't be instantiated |
| 59 }; | 75 }; |
| 60 | 76 |
| 61 #endif | 77 #endif |
| OLD | NEW |