If we have two scanlines with identical extents and coverage, we can amalgamate them into a set of multi-row boxes. For simplicity, we only compare with the last box (assuming that the majority of such cases are "rounded-rectangles" where we have a large vertical area with no
variation and can coalesce into a single box). This operates as a second pass to the scanline converter itself coalescing pure-vertical regions.
d7bcb7b sna/trapezoids: Amalgamate adjacent lines
src/sna/sna_trapezoids_imprecise.c | 29 +++++++++++++++++++++++++++++
src/sna/sna_trapezoids_precise.c | 29 +++++++++++++++++++++++++++++
2 files changed, 58 insertions(+)
Upstream: cgit.freedesktop.org