mapbox / mapbox/tippecanoe

Combin very dense polygons in low zoom

Open
#944 7 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
3.1k
Forks
430
PR merge metrics
No merged PRs in 30d

Description

I have make hillshade by 30m DEM, and it's very dense polygons,like this:
WX20220825-223257
I try to make vector tiles use this:
tippecanoe -aD -aS -Z0 -z6 -L hillshade:test.geojson -o hillshade.mbtiles
The result I am expecting is like this:
WX20220825-223602
But i get this:
WX20220825-223715
It doesn't look like the merging is enough at low zoom(1-6)...blow is my test data:
test.geojson.zip

This is my test style:
{
"layout": {},
"maxzoom": 16,
"type": "fill",
"source": "composite",
"id": "hillshade",
"paint": {
"fill-color": [
"match",
[
"get",
"class"
],
"shadow",
"hsl(56, 36%, 21%)",
"hsl(35, 14%, 100%)"
],
"fill-opacity": [
"interpolate",
[
"linear"
],
[
"zoom"
],
14,
[
"match",
[
"get",
"level"
],
[
2,
1
],
0.06,
[
4,
3
],
0.05,
0.12
],
16,
0
],
"fill-antialias": false
},
"source-layer": "hillshade"
}

So what's the problem?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the reported command with the attached test.geojson and compare the generated hillshade.mbtiles at zoom levels 1–6 with the expected image. Start by tracing low-zoom polygon simplification and merging behavior; done means dense polygons are combined enough to produce the expected low-zoom appearance without breaking the provided style.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, json
Domain
data, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.