systemed / tilemaker

Make OpenStreetMap vector tiles without the stack
https://tilemaker.org/
Other
1.44k stars 229 forks source link

Geometry clipping - summary issue #594

Closed systemed closed 8 months ago

systemed commented 9 months ago

This is an umbrella issue to summarise current clipping issues with tilemaker.

History:

Current status:

The most obvious solution is to move to a clipping algorithm which is still fast but doesn't produce degenerate geometries. Some options:

Other possible fixes/improvements:

Known problem locations:

systemed commented 9 months ago

I have reverted #581 for now. This solves the hangs we were seeing (e.g. #592) though at the cost of some geometry breakage. The commit in correct that causes the hangs is https://github.com/kleunen/boost_geometry_correct/commit/008154ab8116f8399b29e322e012ee8ddb0b13c4.

systemed commented 8 months ago

Clipping seems to be in a good state at the moment thanks to falling back to boost::geometry::intersection and proactively filtering out small rings. I'll therefore close this but it may be a useful collection of links for the future.