aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkAnalyticEdge.cpp
diff options
context:
space:
mode:
authorGravatar Yuqian Li <liyuqian@google.com>2017-07-18 10:11:05 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-07-21 14:17:03 +0000
commit7877d3237826fc4985af3e9d540cff79e408ef34 (patch)
treefa8ea0e7e3f34a67cf72ac628c3b35cf9cc341c7 /src/core/SkAnalyticEdge.cpp
parent467022b1861033d968195687da15270c208279ff (diff)
Make update_edge as a member function of SkAnalyticEdge
This is to prepare for future SkScan_DAAPath.cpp to use this member function (https://skia-review.googlesource.com/c/19666/). Bug: skia: Change-Id: I5fb90ac67b80f8a69a712e7e697d68dcadba5d14 Reviewed-on: https://skia-review.googlesource.com/24180 Reviewed-by: Cary Clark <caryclark@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
Diffstat (limited to 'src/core/SkAnalyticEdge.cpp')
-rw-r--r--src/core/SkAnalyticEdge.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/core/SkAnalyticEdge.cpp b/src/core/SkAnalyticEdge.cpp
index f6ad62f12f..7cb6493f8b 100644
--- a/src/core/SkAnalyticEdge.cpp
+++ b/src/core/SkAnalyticEdge.cpp
@@ -48,6 +48,16 @@ bool SkAnalyticEdge::updateLine(SkFixed x0, SkFixed y0, SkFixed x1, SkFixed y1,
return true;
}
+bool SkAnalyticEdge::update(SkFixed last_y) {
+ SkASSERT(last_y >= fLowerY); // we shouldn't update edge if last_y < fLowerY
+ if (fCurveCount < 0) {
+ return static_cast<SkAnalyticCubicEdge*>(this)->updateCubic();
+ } else if (fCurveCount > 0) {
+ return static_cast<SkAnalyticQuadraticEdge*>(this)->updateQuadratic();
+ }
+ return false;
+}
+
bool SkAnalyticQuadraticEdge::setQuadratic(const SkPoint pts[3]) {
fRiteE = nullptr;