Open dr-jts opened 1 year ago
ConcaveHullOfPolygons can produce a disconnected MultiPolygon output in some situations. This is contrary to the stated contract for this class.
ConcaveHullOfPolygons
This is due to a design limitation in the current code. It can be fixed by ensuring that triangle removal does not disconnect the triangulation.
ConcaveHull
MULTIPOLYGON (((10 20, 20 20, 20 10, 10 10, 10 20)), ((20 30, 30 30, 30 20, 20 20, 20 30)), ((80 90, 90 90, 90 80, 80 80, 80 90)))
Result for Length Ratio = 0.1
MULTIPOLYGON (((20 30, 30 30, 30 20, 20 10, 10 10, 10 20, 20 30)), ((90 90, 90 80, 80 80, 80 90, 90 90)))
ConcaveHullOfPolygons
can produce a disconnected MultiPolygon output in some situations. This is contrary to the stated contract for this class.This is due to a design limitation in the current code. It can be fixed by ensuring that triangle removal does not disconnect the triangulation.
Notes
ConcaveHull
for points).Example
Result for Length Ratio = 0.1