1
2 /*
3 * Copyright 2006 The Android Open Source Project
4 *
5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file.
7 */
8
9
10 #include "SkDrawEmboss.h"
11
12 #if SK_USE_CONDENSED_INFO == 0
13
14 const SkMemberInfo SkDrawEmboss::fInfo[] = {
15 SK_MEMBER(fAmbient, Float),
16 SK_MEMBER_ARRAY(fDirection, Float),
17 SK_MEMBER(fSigma, Float),
18 SK_MEMBER(fSpecular, Float)
19 };
20
21 #endif
22
23 DEFINE_GET_MEMBER(SkDrawEmboss);
24
SkDrawEmboss()25 SkDrawEmboss::SkDrawEmboss() : fSigma(-1) {
26 fDirection.setCount(3);
27 }
28
getMaskFilter()29 SkMaskFilter* SkDrawEmboss::getMaskFilter() {
30 if (fSigma < 0 || fDirection.count() !=3)
31 return nullptr;
32 return SkBlurMaskFilter::CreateEmboss(fSigma, fDirection.begin(),
33 fAmbient, fSpecular);
34 }
35