osm-p2p-vector-tile-index
v2.2.4
Published
Vector tile index for osm-p2p-db
Downloads
23
Readme
osm-p2p-vector-tile-index
Vector tile index for osm-p2p-db
Maintain an index of Mapbox vector tiles on an osm-p2p-db. Currently regenerates the entire index every time the db is updated (the regeneration is debounced). Vector tiles can contain multiple layers which can be defined by filter expressions as defined in the Mapbox GL JS Spec.
Table of Contents
Install
npm install osm-p2p-vector-tile-index
Usage
var VectorTileIndex = require('osm-p2p-vector-tile-index')
var vti = VectorTileIndex(osm)
vti.ready(function () {
vti.getTileJson(1, 1, 1, function (err, tile) {
console.log(tile)
// outputs tile json to stdout...
})
})
Create layers by passing options.layers
:
var layers = {
buildings: ['has', 'building'],
footpaths: ['==', 'highway', 'footway']
}
var vti = VectorTileIndex(osm, {layers: layers})
API
var VectorTileIndex = require('osm-p2p-vector-tile-index')
var vti = VectorTileIndex(osm, options)
Create a new vector tile index with:
osm
- aosm-p2p-db
options.bbox
- bounding box to include in tile index. Defaults to[-Infinity, -Infinity, Infinity, Infinity]
options.layers
- object defining layers in tiles. Each property defines a layer, with either a filter expression as defined in the Mapbox GL JS Spec or a function that will return true for features to appear in that layer. Defaults to{geojsonLayer: ['all']}
i.e. resulting vector tiles will have a single layer with all the data namedgeojsonLayer
.- Additional options are passed through to
osm-p2p-geojson
, e.g.options.metadata
.
vti.getJsonTile(z, x, y, cb)
Return a tile for coordinates z, x, y
in the JSON equivalent of the vector tile specification
vti.getPbfTile(z, x, y, cb)
Return a tile for coordinates z, x, y
encoded as a Google Protocol Buffer as defined in the vector tile specification.
vti.meta()
Return metadata about the tiles (minzoom
, maxzoom
, vector_layers
, bounds
)
vti.ready(fn)
Execute fn
once when the index is ready.
vti.on('update', fn)
Execute fn
whenever the index updates.
Contribute
PRs accepted.
Small note: If editing the Readme, please conform to the standard-readme specification.
License
MIT © Gregor MacLennan / Digital Democracy