Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add an option to extend zooms if still dropping, but with a limit #131

Merged
merged 39 commits into from
Aug 25, 2023

Conversation

e-n-f
Copy link
Collaborator

@e-n-f e-n-f commented Aug 17, 2023

There are two changes here:

  1. Add the --extend-zooms-if-still-dropping-maximum option, which allows the zoom range to be extended if features are still being dropped at maxzoom, but with a limit on the number of zoom levels that may be added
  2. Add the --overzoom option to tile-join, which gives it the long-requested ability to join tilesets with different maxzooms, overzooming tiles from the lower-maxzoom tilesets to extend their zoom range to match the higher-maxzoom tilesets.

Fixes mapbox/tippecanoe#693

README.md Outdated Show resolved Hide resolved
Makefile Outdated Show resolved Hide resolved
@e-n-f e-n-f marked this pull request as ready for review August 25, 2023 18:07
Copy link

@ibesora ibesora left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looked at this with @e-n-f and everything looks good.
As a small thing to tackle in the future, it'd be great if all the triplicated code that happens due to supporting mbtiles, pmtiles and directories, could live on three different sub classes implementing a common interface

@e-n-f e-n-f merged commit 6778aea into main Aug 25, 2023
1 check passed
@e-n-f e-n-f deleted the extend-zooms-maximum branch August 25, 2023 19:42
@Sergeyev
Copy link

Sergeyev commented Nov 7, 2024

Hello!

A strange bug, appears at geojson with 38M objects. At smaller ones (about 1M) - did not appear.

Compiled from https://github.com/felt/tippecanoe#overzooming

At levels 1..14, "Geometry" is added to the "properties" of objects, them become heavy, and with --drop-densest-as-needed application leaves only a few objects per tile.

image
(screenshot from DBeaver, tile from 13 level)

Here is a part of the original GeoJSON with the same object "2cc5f9f3-a507-4863-9922-466bbb8fba95", there are no "Geometry" inside "properties":

{"type": "Feature", "properties": {"style": "osm_style", "ID": 7963555, "GlobalID": "2cc5f9f3-a507-4863-9922-466bbb8fba95", "clusterID": null, "clusterID2": null, "Region": null, "Municipalitet": null, "Street": null, "HouseNumber": null, "Street2": null, "HouseNumber2": null, "RegionCode": "63", "buildingType": "ИЖС", "flatsCount": null, "peopleCount": null, "transportAccessibility": 0, "AutoAccessibility": null, "foodOrgs": 0, "educationOrgs": {"category": "Школы", "dist": 2962.2548297919125, "orgID": 1130, "orgName": "Гармония, МБОУ, школа №41 с углубленным изучением отдельных предметов"}, "sources": {"regional": 0, "lands": 1, "fias": 0, "oks": 1, "reformagkh": 0, "uiks": 0, "msml": 0, "osm": 1}, "fiasAddress": null, "osmAddress": null, "uiksAddress": null, "landsAddress": null, "tkoAddress": null, "sksAddress": null, "reformagkhAddress": null, "oldAPAddress": null, "msmlAddress": null, "oksAddress": null}, "geometry": {"type": "Polygon", "coordinates": [[[50.1208417, 53.239470499999996], [50.1209698, 53.2396022], [50.1211221, 53.2395491], [50.120993899999995, 53.2394174], [50.1208417, 53.239470499999996]]]}, "centroid": null, "_id": {"$oid": "670bd04544319c02d2a83f0e"}}

At levels 15..17 - everything is fine.
In old version - everything is fine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

Overzooming in tile-join
3 participants