8 #ifndef SkBlurMaskFilter_DEFINED
9 #define SkBlurMaskFilter_DEFINED
12 #include "SkMaskFilter.h"
14 #include "SkBlurTypes.h"
22 static SkScalar ConvertRadiusToSigma(SkScalar radius);
25 kNone_BlurFlag = 0x00,
27 kIgnoreTransform_BlurFlag = 0x01,
29 kHighQuality_BlurFlag = 0x02,
44 const SkRect& occluder, uint32_t flags = kNone_BlurFlag);
47 uint32_t flags = kNone_BlurFlag) {
48 return Make(style, sigma, SkRect::MakeEmpty(), flags);
60 SkScalar ambient, SkScalar specular);
62 #ifdef SK_SUPPORT_LEGACY_MASKFILTER_PTR
63 static SkMaskFilter* Create(SkBlurStyle style, SkScalar sigma, uint32_t flags = kNone_BlurFlag){
64 return Make(style, sigma, flags).release();
66 static SkMaskFilter* CreateEmboss(SkScalar blurSigma,
const SkScalar direction[3],
67 SkScalar ambient, SkScalar specular) {
68 return MakeEmboss(blurSigma, direction, ambient, specular).release();
70 SK_ATTR_DEPRECATED(
"use sigma version")
71 static
SkMaskFilter* CreateEmboss(const SkScalar direction[3],
72 SkScalar ambient, SkScalar specular,
76 static const int kMaxDivisions = 6;
87 static bool ComputeBlurredRRectParams(
const SkRRect& srcRRect,
const SkRRect& devRRect,
89 SkScalar sigma, SkScalar xformedSigma,
92 SkScalar rectXs[kMaxDivisions],
93 SkScalar rectYs[kMaxDivisions],
94 SkScalar texXs[kMaxDivisions],
95 SkScalar texYs[kMaxDivisions],
96 int* numXs,
int* numYs, uint32_t* skipMask);
98 SK_DECLARE_FLATTENABLE_REGISTRAR_GROUP()
The SkRRect class represents a rounded rect with a potentially different radii for each corner...
Definition: SkRRect.h:48
SkMaskFilter is the base class for object that perform transformations on an alpha-channel mask befor...
Definition: SkMaskFilter.h:44
BlurFlags
Definition: SkBlurMaskFilter.h:24
Definition: SkBlurMaskFilter.h:16