polygon_fill
Mojo module đźˇ
polygon_fill
A polygon’s interior fill: the scanline/winding-number machinery (_Crossing, _Span, _spans_from_crossings), its two consumers here (fill_polygon, fill_polygon_aa), and _point_in_polygon, the real-valued membership test the anti-aliased sweep is checked against.
The outline strokes, draw_polygon/draw_polygon_aa, are a
different algorithm in canvas.shapes.lines.
fill_polygon_aa describes its geometry as an _EdgeTable and hands it
to canvas.aa_crossing’s _sweep_edges_aa, shared with fill_path_aa.
path.mojo imports _Crossing/_spans_from_crossings for its own
hard-edged fills. In both cases the callers differ in how they collect
edges or crossings, not in what happens after. _is_inside lives in
canvas.fill_rule, which both can see.