Vector Tiles Reader QGIS Plugin

Aus Geoinformation HSR
Version vom 25. April 2017, 14:55 Uhr von Stefan (Diskussion | Beiträge) (How to Add a Vector Tile Layer)

Wechseln zu: Navigation, Suche

QGIS-Plugin Vector Tiles Reader - This Python plugin reads Mapbox Vector Tiles (MVT) from a local MBTiles file and loads them into a vector layer that is rendered by QGIS.

 >> This is experimental work in progress! Expected an early release as QGIS plugin around 2nd quarter of 2017 << 

Important websites:


About

About Vector Tiles: Though this is a vector representation, Vector Tiles are rather specific data targeted to visualization and thus not fully comparable to generic geospatial vector data formats. Because of many optimization issues Vector Tiles are lossy in many respect: Coordinates are converted to integers and thus loose precision, features are filtered at certain zoom levels and geometries like roads are simplified. Moreover they are "overzoomed" which means that they often borrow data from upper zoom levels.

Available data sources (MBTiles):

  • Download MBTiles (compatible to "Mapbox Streets v7") from OpenMapTiles project (see also city extracts).
  • There's a possibility to download single tiles from online resources, like "Mapbox Streets v7" (tbd.)

Data model documentation:

Available styles:

  • Some default styles are delivered with the plugin. However, some may be missing.

How to Add a Vector Tile Layer

Adding a local mbtiles file ("Add Vector Tile Layer..."):

  • Go to menu item "Add Vector Tile Layer..."
  • In modal dialog click on "Source Browse"
  • Change to directory or paste "%userprofile%/.qgis2/python/plugins/Vector-Tiles-Reader-QGIS-Plugin\sample data\" to load a sample mbtile.
  • ...

Adding a server connection ("Add Tile Server Layer"):

Known Limitations

Limitations in general:

  • This plugin is only tested on reading MBTiles containing Vector Tiles according to Mapbox Vector Tile Specification 2.1.
  • CRS is always EPSG:3857 Web-Mercator. Though Vector Tiles are in principle not bound to a coordinate reference system (CRS), currently it's only possible to handle Vector Tiles in Web-Mercator EPSG:3857.
  • There's no styling attached to MBTiles nor to Vector Tiles.

Limitations of current plugin:

Enhancements and Ideas

The plugin could read Vector Tiles directly from the web. But then - to behave similar to raster tiles - the problem of missing corresponding styling becomes even more prominent.

Installation and Source Code

Intall as local plugin (not yet in QGIS plugin repo -[Install from inside QGIS as Python plugin (Note: For plugin versions up to 0.9 you have to enable "experimental plugins")]-).

FAQ

How can I use the server connection feature?

Any vector tile service, implementing the TileJSON specification should work. For the feature to work, you have to create a connection using a URL pointing to the TileJSON of the tile service.

For example you can use http://free.tilehosting.com/data/v3.json?key={API-KEY} and get your own API-Key from OpenMapTiles.com

Ressources

See Categories below.