Lines Matching defs:prev
46 SSEdge(Edge* edge, SSVertex* prev, SSVertex* next)
47 : fEdge(edge), fEvent(nullptr), fPrev(prev), fNext(next) {
65 Vertex* prev = e->fPrev->fVertex;
67 if (prev == next || !prev->fPartner || !next->fPartner) {
70 Edge bisector1(prev, prev->fPartner, 1, EdgeType::kConnector);
77 prev->fID, next->fID, e->fEdge->fTop->fID, e->fEdge->fBottom->fID, p.fX, p.fY,
163 Edge* prev = leftEnclosingEdge;
165 if (prev) {
166 e->fWinding += prev->fWinding;
168 activeEdges.insert(e, prev);
169 prev = e;
189 Vertex* prev = prevEdge->fWinding == 1 ? prevEdge->fTop : prevEdge->fBottom;
191 double distPrev = e->dist(prev->fPoint);
196 if (prev == next) {
206 Edge* join = this->makeEdge(prev, next, EdgeType::kInner, c);
207 if (prev->fPoint != next->fPoint) {
250 Vertex* prev = fEdge->fPrev->fVertex;
257 Vertex* dest = triangulator->makeSortedVertex(fPoint, fAlpha, mesh, prev, c);
261 prev->fID, next->fID, fEdge->fEdge->fTop->fID, fEdge->fEdge->fBottom->fID, dest->fID,
265 triangulator->connectSSEdge(prev, dest, c);
323 Edge* prev = e->fPrevEdgeAbove ? e->fPrevEdgeAbove : leftEnclosingEdge;
325 bool leftOverlap = prev && is_overlap_edge(prev);
328 (!prev || prev->fWinding == 0 || e->fWinding == 0);
329 if (prev) {
330 e->fWinding -= prev->fWinding;
367 e = prev;
369 Edge* prev = leftEnclosingEdge;
371 if (prev) {
372 e->fWinding += prev->fWinding;
374 activeEdges.insert(e, prev);
375 prev = e;
398 static bool inversion(Vertex* prev, Vertex* next, Edge* origEdge, const Comparator& c) {
399 if (!prev || !next) {
402 int winding = c.sweep_lt(prev->fPoint, next->fPoint) ? 1 : -1;