diff options
author | Robert Phillips <robertphillips@google.com> | 2017-08-04 11:27:00 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-08-07 13:33:49 +0000 |
commit | 6dd8cf144ecbc395dc12bd5f775bbeee04b9d38c (patch) | |
tree | f05965ad55589843158accb1e538411a43068648 /tools | |
parent | 35ee0e09b4966bd087147e2c9b4c3177e9737d3b (diff) |
Remove SkLightingShader and associated classes
Change-Id: I8050414c30dfdb5df23ca79955adc5ba3a29d3f5
Reviewed-on: https://skia-review.googlesource.com/31140
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/sk_tool_utils.cpp | 108 | ||||
-rw-r--r-- | tools/sk_tool_utils.h | 6 |
2 files changed, 0 insertions, 114 deletions
diff --git a/tools/sk_tool_utils.cpp b/tools/sk_tool_utils.cpp index d957d53f12..a8d877bf8b 100644 --- a/tools/sk_tool_utils.cpp +++ b/tools/sk_tool_utils.cpp @@ -261,114 +261,6 @@ void add_to_text_blob(SkTextBlobBuilder* builder, const char* text, const SkPain memcpy(run.glyphs, glyphs.begin(), glyphs.count() * sizeof(uint16_t)); } -static inline void norm_to_rgb(SkBitmap* bm, int x, int y, const SkVector3& norm) { - SkASSERT(SkScalarNearlyEqual(norm.length(), 1.0f)); - unsigned char r = static_cast<unsigned char>((0.5f * norm.fX + 0.5f) * 255); - unsigned char g = static_cast<unsigned char>((-0.5f * norm.fY + 0.5f) * 255); - unsigned char b = static_cast<unsigned char>((0.5f * norm.fZ + 0.5f) * 255); - *bm->getAddr32(x, y) = SkPackARGB32(0xFF, r, g, b); -} - -void create_hemi_normal_map(SkBitmap* bm, const SkIRect& dst) { - const SkPoint center = SkPoint::Make(dst.fLeft + (dst.width() / 2.0f), - dst.fTop + (dst.height() / 2.0f)); - const SkPoint halfSize = SkPoint::Make(dst.width() / 2.0f, dst.height() / 2.0f); - - SkVector3 norm; - - for (int y = dst.fTop; y < dst.fBottom; ++y) { - for (int x = dst.fLeft; x < dst.fRight; ++x) { - norm.fX = (x + 0.5f - center.fX) / halfSize.fX; - norm.fY = (y + 0.5f - center.fY) / halfSize.fY; - - SkScalar tmp = norm.fX * norm.fX + norm.fY * norm.fY; - if (tmp >= 1.0f) { - norm.set(0.0f, 0.0f, 1.0f); - } else { - norm.fZ = sqrtf(1.0f - tmp); - } - - norm_to_rgb(bm, x, y, norm); - } - } -} - -void create_frustum_normal_map(SkBitmap* bm, const SkIRect& dst) { - const SkPoint center = SkPoint::Make(dst.fLeft + (dst.width() / 2.0f), - dst.fTop + (dst.height() / 2.0f)); - - SkIRect inner = dst; - inner.inset(dst.width()/4, dst.height()/4); - - SkPoint3 norm; - const SkPoint3 left = SkPoint3::Make(-SK_ScalarRoot2Over2, 0.0f, SK_ScalarRoot2Over2); - const SkPoint3 up = SkPoint3::Make(0.0f, -SK_ScalarRoot2Over2, SK_ScalarRoot2Over2); - const SkPoint3 right = SkPoint3::Make(SK_ScalarRoot2Over2, 0.0f, SK_ScalarRoot2Over2); - const SkPoint3 down = SkPoint3::Make(0.0f, SK_ScalarRoot2Over2, SK_ScalarRoot2Over2); - - for (int y = dst.fTop; y < dst.fBottom; ++y) { - for (int x = dst.fLeft; x < dst.fRight; ++x) { - if (inner.contains(x, y)) { - norm.set(0.0f, 0.0f, 1.0f); - } else { - SkScalar locX = x + 0.5f - center.fX; - SkScalar locY = y + 0.5f - center.fY; - - if (locX >= 0.0f) { - if (locY > 0.0f) { - norm = locX >= locY ? right : down; // LR corner - } else { - norm = locX > -locY ? right : up; // UR corner - } - } else { - if (locY > 0.0f) { - norm = -locX > locY ? left : down; // LL corner - } else { - norm = locX > locY ? up : left; // UL corner - } - } - } - - norm_to_rgb(bm, x, y, norm); - } - } -} - -void create_tetra_normal_map(SkBitmap* bm, const SkIRect& dst) { - const SkPoint center = SkPoint::Make(dst.fLeft + (dst.width() / 2.0f), - dst.fTop + (dst.height() / 2.0f)); - - static const SkScalar k1OverRoot3 = 0.5773502692f; - - SkPoint3 norm; - const SkPoint3 leftUp = SkPoint3::Make(-k1OverRoot3, -k1OverRoot3, k1OverRoot3); - const SkPoint3 rightUp = SkPoint3::Make(k1OverRoot3, -k1OverRoot3, k1OverRoot3); - const SkPoint3 down = SkPoint3::Make(0.0f, SK_ScalarRoot2Over2, SK_ScalarRoot2Over2); - - for (int y = dst.fTop; y < dst.fBottom; ++y) { - for (int x = dst.fLeft; x < dst.fRight; ++x) { - SkScalar locX = x + 0.5f - center.fX; - SkScalar locY = y + 0.5f - center.fY; - - if (locX >= 0.0f) { - if (locY > 0.0f) { - norm = locX >= locY ? rightUp : down; // LR corner - } else { - norm = rightUp; - } - } else { - if (locY > 0.0f) { - norm = -locX > locY ? leftUp : down; // LL corner - } else { - norm = leftUp; - } - } - - norm_to_rgb(bm, x, y, norm); - } - } -} - #if !defined(__clang__) && defined(_MSC_VER) // MSVC takes ~2 minutes to compile this function with optimization. // We don't really care to wait that long for this function. diff --git a/tools/sk_tool_utils.h b/tools/sk_tool_utils.h index 6283225c7f..ea06c119e7 100644 --- a/tools/sk_tool_utils.h +++ b/tools/sk_tool_utils.h @@ -121,12 +121,6 @@ namespace sk_tool_utils { void add_to_text_blob(SkTextBlobBuilder* builder, const char* text, const SkPaint& origPaint, SkScalar x, SkScalar y); - void create_hemi_normal_map(SkBitmap* bm, const SkIRect& dst); - - void create_frustum_normal_map(SkBitmap* bm, const SkIRect& dst); - - void create_tetra_normal_map(SkBitmap* bm, const SkIRect& dst); - void make_big_path(SkPath& path); // Return a blurred version of 'src'. This doesn't use a separable filter |