OLD | NEW |
| (Empty) |
1 /* | |
2 * Copyright 2012 Google Inc. | |
3 * | |
4 * Use of this source code is governed by a BSD-style license that can be | |
5 * found in the LICENSE file. | |
6 */ | |
7 #ifndef SkOpSpan_DEFINED | |
8 #define SkOpSpan_DEFINED | |
9 | |
10 #include "SkPoint.h" | |
11 | |
12 class SkOpSegment; | |
13 | |
14 struct SkOpSpan { | |
15 SkOpSegment* fOther; | |
16 SkPoint fPt; // computed when the curves are intersected | |
17 double fT; | |
18 double fOtherT; // value at fOther[fOtherIndex].fT | |
19 int fOtherIndex; // can't be used during intersection | |
20 int fWindSum; // accumulated from contours surrounding this one. | |
21 int fOppSum; // for binary operators: the opposite winding sum | |
22 int fWindValue; // 0 == canceled; 1 == normal; >1 == coincident | |
23 int fOppValue; // normally 0 -- when binary coincident edges combine, opp va
lue goes here | |
24 bool fDone; // if set, this span to next higher T has been processed | |
25 bool fUnsortableStart; // set when start is part of an unsortable pair | |
26 bool fUnsortableEnd; // set when end is part of an unsortable pair | |
27 bool fTiny; // if set, span may still be considered once for edge following | |
28 bool fLoop; // set when a cubic loops back to this point | |
29 }; | |
30 | |
31 #endif | |
OLD | NEW |