SixLabors / ImageSharp.Drawing

:pen: Extensions to ImageSharp containing a cross-platform 2D polygon manipulation API and drawing operations.
https://sixlabors.com/products/imagesharp-drawing/
Other
285 stars 39 forks source link

Rasterizing artifacts when drawing large and complex polygons #106

Open antonfirsov opened 3 years ago

antonfirsov commented 3 years ago

Prerequisites

Description

Although rendering is less prone to floating point accuracy issues since #96, it's still possible to stress it to produce unwanted artifacts. It might be a logical corner case unhandled by PolygonScanner instead of a numeric issue.

Steps to Reproduce

Enable and run DrawingRobustnessTests.LargeGeoJson_Lines.

The output has artifacts: https://user-images.githubusercontent.com/6835152/97231127-5538e200-17db-11eb-9aec-e305a41b0e37.png

System Configuration

antonfirsov commented 3 years ago

I believe this is a low impact edge case. We won't be able to address it for 1.0.