Lines Matching defs:winding
360 void* GrTriangulator::emitTriangle(Vertex* prev, Vertex* curr, Vertex* next, int winding,
362 if (winding > 0) {
367 if (fCollectBreadcrumbTriangles && abs(winding) > 1 &&
369 // The first winding count will come from the actual triangle we emit. The remaining counts
371 fBreadcrumbList.append(fAlloc, prev->fPoint, curr->fPoint, next->fPoint, abs(winding) - 1);
376 GrTriangulator::Poly::Poly(Vertex* v, int winding)
378 , fWinding(winding)
448 Poly* GrTriangulator::makePoly(Poly** head, Vertex* v, int winding) const {
449 Poly* poly = fAlloc->make<Poly>(v, winding);
595 static inline bool apply_fill_type(SkPathFillType fillType, int winding) {
598 return winding != 0;
600 return (winding & 1) != 0;
602 return winding == 1;
604 return (winding & 1) == 1;
611 bool GrTriangulator::applyFillType(int winding) const {
612 return apply_fill_type(fPath.getFillType(), winding);
622 int winding = c.sweep_lt(prev->fPoint, next->fPoint) ? 1 : -1;
623 Vertex* top = winding < 0 ? next : prev;
624 Vertex* bottom = winding < 0 ? prev : next;
625 return fAlloc->make<Edge>(top, bottom, winding, type);
890 int winding = edge->fWinding;
895 // Actually "v < p0 < p1": update 'edge' to be v->p1 and add v->p0. We flip the winding on
899 winding *= -1;
902 // Actually "p0 < p1 < v": update 'edge' to be p0->v and add p1->v. We flip the winding on
906 winding *= -1;
909 // The ideal case, "p0 < v < p1": update 'edge' to be p0->v and add v->p1. Original winding
915 Edge* newEdge = fAlloc->make<Edge>(top, bottom, winding, edge->fType);
1250 TESS_LOG(" edge %g -> %g, winding %d\n", e->fTop->fID, e->fBottom->fID, e->fWinding);
1253 TESS_LOG(" edge %g -> %g, winding %d\n", e->fTop->fID, e->fBottom->fID, e->fWinding);
1444 int winding = leftEdge->fLeftPoly ? leftEdge->fLeftPoly->fWinding : 0;
1445 winding += leftEdge->fWinding;
1446 if (winding != 0) {
1447 Poly* poly = this->makePoly(&polys, v, winding);