aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/pathops/SkOpSpan.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/pathops/SkOpSpan.h')
-rw-r--r--src/pathops/SkOpSpan.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/pathops/SkOpSpan.h b/src/pathops/SkOpSpan.h
index 81ede1c9ab..2fe0b611b6 100644
--- a/src/pathops/SkOpSpan.h
+++ b/src/pathops/SkOpSpan.h
@@ -17,20 +17,24 @@ struct SkOpSpan {
double fT;
double fOtherT; // value at fOther[fOtherIndex].fT
int fOtherIndex; // can't be used during intersection
+ int fFromAngleIndex; // (if t > 0) index into segment's angle array going negative in t
+ int fToAngleIndex; // (if t < 1) index into segment's angle array going positive in t
int fWindSum; // accumulated from contours surrounding this one.
int fOppSum; // for binary operators: the opposite winding sum
int fWindValue; // 0 == canceled; 1 == normal; >1 == coincident
int fOppValue; // normally 0 -- when binary coincident edges combine, opp value goes here
+ bool fChased; // set after span has been added to chase array
bool fDone; // if set, this span to next higher T has been processed
+ bool fLoop; // set when a cubic loops back to this point
+ bool fSmall; // if set, consecutive points are almost equal
+ bool fTiny; // if set, consecutive points are equal but consecutive ts are not precisely equal
bool fUnsortableStart; // set when start is part of an unsortable pair
bool fUnsortableEnd; // set when end is part of an unsortable pair
- bool fSmall; // if set, consecutive points are almost equal
- bool fTiny; // if set, span may still be considered once for edge following
- bool fLoop; // set when a cubic loops back to this point
-#ifdef SK_DEBUG
+ // available to testing only
+ const SkOpSegment* debugToSegment(ptrdiff_t* ) const;
void dump() const;
-#endif
+ void dumpOne() const;
};
#endif