From e308a122ef996a64a21a6339e3b50b9edfdf654f Mon Sep 17 00:00:00 2001 From: Jim Van Verth Date: Mon, 8 May 2017 14:19:30 -0400 Subject: Remove height functor for shadows and replace with plane equation params Change-Id: I948eceb2c58dc50468993dba54c209f18e440e48 Reviewed-on: https://skia-review.googlesource.com/15873 Commit-Queue: Jim Van Verth Reviewed-by: Robert Phillips --- samplecode/SampleShadowUtils.cpp | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'samplecode/SampleShadowUtils.cpp') diff --git a/samplecode/SampleShadowUtils.cpp b/samplecode/SampleShadowUtils.cpp index f5b6635886..6d047be93d 100755 --- a/samplecode/SampleShadowUtils.cpp +++ b/samplecode/SampleShadowUtils.cpp @@ -109,7 +109,7 @@ protected: } void drawShadowedPath(SkCanvas* canvas, const SkPath& path, - std::function zFunc, + const SkPoint3& zPlaneParams, const SkPaint& paint, SkScalar ambientAlpha, const SkPoint3& lightPos, SkScalar lightWidth, SkScalar spotAlpha, uint32_t flags) { @@ -130,10 +130,10 @@ protected: // zValue, // lightPos, lightWidth, // ambientAlpha, spotAlpha, SK_ColorBLACK, flags); - SkShadowUtils::DrawUncachedShadow(canvas, path, zFunc, + SkShadowUtils::DrawUncachedShadow(canvas, path, zPlaneParams, lightPos, lightWidth, ambientAlpha, 0, SK_ColorRED, flags); - SkShadowUtils::DrawUncachedShadow(canvas, path, zFunc, + SkShadowUtils::DrawUncachedShadow(canvas, path, zPlaneParams, lightPos, lightWidth, 0, spotAlpha, SK_ColorBLUE, flags); @@ -172,9 +172,7 @@ protected: SkPaint paint; paint.setColor(SK_ColorGREEN); paint.setAntiAlias(true); - SkScalar zValue = SkTMax(1.0f, kHeight + fZDelta); - std::function zFunc = - [zValue](SkScalar, SkScalar) { return zValue; }; + SkPoint3 zPlaneParams = SkPoint3::Make(0, 0, SkTMax(1.0f, kHeight + fZDelta)); for (auto& m : matrices) { for (auto flags : { kNone_ShadowFlag, kTransparentOccluder_ShadowFlag }) { for (const auto& path : fPaths) { @@ -192,8 +190,8 @@ protected: canvas->save(); canvas->concat(m); - drawShadowedPath(canvas, path, zFunc, paint, kAmbientAlpha, kLightPos, kLightR, - kSpotAlpha, flags); + drawShadowedPath(canvas, path, zPlaneParams, paint, kAmbientAlpha, kLightPos, + kLightR, kSpotAlpha, flags); canvas->restore(); canvas->translate(dx, 0); -- cgit v1.2.3