developmentseed / developmentseed/tipg

Dropping features at lower zoom levels

Open
#22 0 comments 2 reactions 0 assignees View on GitHub
Dominant language
PLpgSQL
Stars
219
Forks
39
Avg merge
1d 18h
Merged PRs (30d)
6

Description

It’s my understanding that `tipg` will return all queried features at all vector tile zoom levels. I’m considering the case where there are a huge number of features or a dataset/table will grow as more data is appended to it. Is there a way to drop features at lower levels to mitigate the issue of loading a huge amount of features at low zoom levels?

There’s a good article [here](https://cholmes.medium.com/an-overview-of-cloud-native-vector-c223845638e0) that describe this problem:

> Enabling visualization is also much more challenging with vector data than raster. With both a key step is to create overviews that give a user a sensible view of the data at lower zoom levels. With raster data, there are a small number of well-known algorithms (nearest neighbor, average, bilinear) that can work consistently on any input and give pretty great results. With vector data, taking a naive mathematical approach, like just using 25% of the points at each overview level, will yield results that don’t ‘look’ right and aren’t useful for a person to figure out where to zoom in to. And what works for one type of data may well not work for other types of data: you may be able to get a nice algorithm that does great road overviews but plugging hydrographic data into it might well yield garbage. The [tippecanoe project](https://github.com/mapbox/tippecanoe) did a great job of providing tools to create great vector data overviews, but it needs a good bit of user configuration and its techniques have not yet been widely adopted.

I’ve used [tippecanoe](https://github.com/mapbox/tippecanoe) in the past to create vector tiles and they have a way to drop features but I haven’t looked to much into their algorithm.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.