SkShadowUtils.cpp revision 43475ad9dc43c4cbe13d924d8caff8916dcbbc06
1/* 2* Copyright 2017 Google Inc. 3* 4* Use of this source code is governed by a BSD-style license that can be 5* found in the LICENSE file. 6*/ 7 8#include "SkShadowUtils.h" 9#include "SkCanvas.h" 10#include "../effects/SkShadowMaskFilter.h" 11 12// Draw an offset spot shadow and outlining ambient shadow for the given path. 13void SkShadowUtils::DrawShadow(SkCanvas* canvas, const SkPath& path, SkScalar occluderHeight, 14 const SkPoint3& lightPos, SkScalar lightRadius, 15 SkScalar ambientAlpha, SkScalar spotAlpha, SkColor color, 16 uint32_t flags) { 17 SkPaint newPaint; 18 newPaint.setColor(color); 19 newPaint.setMaskFilter(SkShadowMaskFilter::Make(occluderHeight, lightPos, lightRadius, 20 ambientAlpha, spotAlpha, flags)); 21 22 canvas->drawPath(path, newPaint); 23} 24