mirror of
https://github.com/felt/tippecanoe.git
synced 2026-10-02 08:25:40 +02:00
Don't prune variable-depth children while a minzoom-gated feature is pending The minzoom_feature_pending flag from #397 keeps a variable-depth pyramid subdividing until explicit per-feature minzooms are satisfied, but two gaps let features still be dropped: The flag was only set when tippecanoe_minzoom > z + 1, so a feature whose minzoom is exactly z + 1 never marked the tile pending, even though a leaf at z carries only z-visible content. The early-stop commit never consulted the flag: a tile that succeeded in stopping early inserted itself into skip_children_out unconditionally, pruning the children the pending feature needed. The flag only inflated estimated_complexity_out, which the pruning ignores. Set the flag for any feature excluded below its minzoom, include it in the early-stop veto, and skip child pruning while it is set. Adds a fixture covering the minzoom == z + 1 boundary; make test passes with no diffs to existing fixtures.
3 lines
268 B
JSON
3 lines
268 B
JSON
{"type":"Feature","id":1,"tippecanoe":{"minzoom":10},"properties":{"depth":10},"geometry":{"type":"Point","coordinates":[0.05,0.05]}}
|
|
{"type":"Feature","id":2,"tippecanoe":{"minzoom":11},"properties":{"depth":11},"geometry":{"type":"Point","coordinates":[0.06,0.06]}}
|