remove pathop template
Pathops used templates for curve intersection.
Since only one template is required if curves share
an abstract base, remove the template altogether.
This makes the code easier to read, and incidentally
makes it slightly smaller and much faster.
This also removes debugging code specific to templates,
and removes Simplify code which isn't covered by tests
or fuzz.
This shaves the execution time of
pathops_unittest -V -x from 6m to 3m23s.
R=kjlubick@google.com
Bug: skia:
Change-Id: I00c08210e47efed83295276ae89ad64e7ec07ade
Reviewed-on: https://skia-review.googlesource.com/c/162021
Commit-Queue: Cary Clark <caryclark@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
diff --git a/src/pathops/SkIntersections.h b/src/pathops/SkIntersections.h
index fe70284..9a7cdd0 100644
--- a/src/pathops/SkIntersections.h
+++ b/src/pathops/SkIntersections.h
@@ -269,11 +269,10 @@
int intersectRay(const SkDQuad&, const SkDLine&);
int intersectRay(const SkDConic&, const SkDLine&);
int intersectRay(const SkDCubic&, const SkDLine&);
-#if PATH_OP_COMPILE_FOR_SIZE
int intersectRay(const SkTCurve& tCurve, const SkDLine& line) {
return tCurve.intersectRay(this, line);
}
-#endif
+
void merge(const SkIntersections& , int , const SkIntersections& , int );
int mostOutside(double rangeStart, double rangeEnd, const SkDPoint& origin) const;
void removeOne(int index);