aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/pathops/SkIntersections.h
diff options
context:
space:
mode:
authorGravatar hcm <hcm@google.com>2014-10-28 10:55:54 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2014-10-28 10:55:54 -0700
commit27c46a08a9210e9306b8ea1b00349ec198153c38 (patch)
tree31548283108b4e997adc12651ae77acbb6c3fc8c /src/pathops/SkIntersections.h
parentee0c2e4fd429424beaa35f29e7f656997ba3f115 (diff)
Revert of harden pathops for pathological test (patchset #19 id:410001 of https://codereview.chromium.org/633393002/)
Reason for revert: Compile errors on bots Original issue's description: > These tests stress pathops by describing the union of circle-like paths that have tiny line segments embedded and double back to create near-coincident conditions. > > The fixes include > - detect when finding the active top loops between two possible answers > - preflight chasing winding to ensure answer is consistent > - binary search more often when quadratic intersection fails > - add more failure paths when an intersect is missed > > While this fixes the chrome bug, reenabling path ops in svg should be deferred until additional fixes are landed. > > TBR= > BUG=421132 > > Committed: https://skia.googlesource.com/skia/+/6f726addf3178b01949bb389ef83cf14a1d7b6b2 TBR=caryclark@google.com NOTREECHECKS=true NOTRY=true BUG=421132 Review URL: https://codereview.chromium.org/686843002
Diffstat (limited to 'src/pathops/SkIntersections.h')
-rw-r--r--src/pathops/SkIntersections.h15
1 files changed, 2 insertions, 13 deletions
diff --git a/src/pathops/SkIntersections.h b/src/pathops/SkIntersections.h
index 20823fac2b..040671093c 100644
--- a/src/pathops/SkIntersections.h
+++ b/src/pathops/SkIntersections.h
@@ -16,7 +16,6 @@ class SkIntersections {
public:
SkIntersections()
: fSwap(0)
- , fFlatMeasure(false)
#ifdef SK_DEBUG
, fDepth(0)
#endif
@@ -40,10 +39,6 @@ public:
};
TArray operator[](int n) const { return TArray(fT[n]); }
- void allowFlatMeasure(bool flatAllowed) {
- fFlatMeasure = flatAllowed;
- }
-
void allowNear(bool nearAllowed) {
fAllowNear = nearAllowed;
}
@@ -93,14 +88,10 @@ public:
cubic.set(a);
SkDQuad quad;
quad.set(b);
- fMax = 7;
+ fMax = 6;
return intersect(cubic, quad);
}
- bool flatMeasure() const {
- return fFlatMeasure;
- }
-
bool hasT(double t) const {
SkASSERT(t == 0 || t == 1);
return fUsed > 0 && (t == 0 ? fT[0][0] == 0 : fT[0][fUsed - 1] == 1);
@@ -210,7 +201,7 @@ public:
bool swapped() const {
return fSwap;
}
-
+
int used() const {
return fUsed;
}
@@ -223,7 +214,6 @@ public:
SkASSERT(++fDepth < 16);
}
- void alignQuadPts(const SkPoint a[3], const SkPoint b[3]);
void append(const SkIntersections& );
void cleanUpCoincidence();
int coincidentUsed() const;
@@ -292,7 +282,6 @@ private:
unsigned char fMax;
bool fAllowNear;
bool fSwap;
- bool fFlatMeasure; // backwards-compatibility when cubics uses quad intersection
#ifdef SK_DEBUG
int fDepth;
#endif