diff options
author | reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2008-12-17 15:59:43 +0000 |
---|---|---|
committer | reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2008-12-17 15:59:43 +0000 |
commit | 8a1c16ff38322f0210116fa7293eb8817c7e477e (patch) | |
tree | fe40e07f6c8983318a2f79032b9a706ede1090c1 /include/effects/SkBlurMaskFilter.h | |
parent | 2559c629078f738ac37095d896d580b681ac6a30 (diff) |
grab from latest android
git-svn-id: http://skia.googlecode.com/svn/trunk@27 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'include/effects/SkBlurMaskFilter.h')
-rw-r--r-- | include/effects/SkBlurMaskFilter.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/include/effects/SkBlurMaskFilter.h b/include/effects/SkBlurMaskFilter.h new file mode 100644 index 0000000000..b90ea5e49e --- /dev/null +++ b/include/effects/SkBlurMaskFilter.h @@ -0,0 +1,58 @@ +/* + * Copyright (C) 2006 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef SkBlurMaskFilter_DEFINED +#define SkBlurMaskFilter_DEFINED + +// we include this since our callers will need to at least be able to ref/unref +#include "SkMaskFilter.h" +#include "SkScalar.h" + +class SkBlurMaskFilter { +public: + enum BlurStyle { + kNormal_BlurStyle, //!< fuzzy inside and outside + kSolid_BlurStyle, //!< solid inside, fuzzy outside + kOuter_BlurStyle, //!< nothing inside, fuzzy outside + kInner_BlurStyle, //!< fuzzy inside, nothing outside + + kBlurStyleCount + }; + + /** Create a blur maskfilter. + @param radius The radius to extend the blur from the original mask. Must be > 0. + @param style The BlurStyle to use + @return The new blur maskfilter + */ + static SkMaskFilter* Create(SkScalar radius, BlurStyle style); + + /** Create an emboss maskfilter + @param direction array of 3 scalars [x, y, z] specifying the direction of the light source + @param ambient 0...1 amount of ambient light + @param specular coefficient for specular highlights (e.g. 8) + @param blurRadius amount to blur before applying lighting (e.g. 3) + @return the emboss maskfilter + */ + static SkMaskFilter* CreateEmboss( const SkScalar direction[3], + SkScalar ambient, SkScalar specular, + SkScalar blurRadius); + +private: + SkBlurMaskFilter(); // can't be instantiated +}; + +#endif + |