slippy-grid
v2.3.0
Published
Generates an iterator of TMS tiles from BBox or GeoJSON
Downloads
49
Maintainers
Readme
Slippy Grid
Create slippy tile grid iterators from BBox.
Install
npm
$ npm install --save slippy-grid
web browser ES6
<script src="https://unpkg.com/slippy-grid/docs/slippy-grid.min.js"></script>
API
Table of Contents
single
Creates an Iterator of Tiles from a given BBox
Parameters
extent
(BBox | Array<BBox> | GeoJSON) BBox [west, south, east, north] order or GeoJSON PolygonminZoom
number Minimum ZoommaxZoom
number Maximum Zoom
Examples
const grid = slippyGrid.single([-180.0, -90.0, 180, 90], 3, 8)
const {value, done} = grid.next()
//=value [x, y, z]
//=done true/false
Returns Iterator<Tile> Iterable Grid of Tiles from extent
geojson
Creates an Iterator of Tiles from a given GeoJSON
Parameters
extent
FeatureCollection<(Polygon | MultiPolygon)> GeoJSON Polygon(s)minZoom
number Minimum ZoommaxZoom
number Maximum Zoom
Examples
const grid = slippyGrid.geojson(poly, 3, 8)
const {value, done} = grid.next()
// value => [x, y, z]
// done => true/false
Returns Iterator<Tile> Iterable Grid of Tiles from GeoJSON
getChildren
Creates an Iterator of children Tiles from a given parent tile
Parameters
parentTile
GeoJSON TilemaxZoom
number Maximum Zoom
Examples
const parentTile = [0, 572, 10]
const maxZoom = 12
const grid = slippyGrid.getChildren(parentTile, maxZoom)
const {value, done} = grid.next()
// value => [x, y, z]
// done => true/false
Returns Iterator<Tile> Iterable of Tiles
all
All Tiles from a given BBox
Parameters
extent
(BBox | Array<BBox> | GeoJSON) BBox [west, south, east, north] order or GeoJSON PolygonminZoom
number Minimum ZoommaxZoom
number Maximum Zoom
Examples
const tiles = slippyGrid.all([-180.0, -90.0, 180, 90], 3, 8)
//=tiles
Returns Array<Tile> Tiles from extent
bulk
Creates a bulk Iterator of Tiles from a given BBox
Parameters
extent
(BBox | Array<BBox> | GeoJSON) BBox [west, south, east, north] order or GeoJSON PolygonminZoom
number Minimum ZoommaxZoom
number Maximum Zoomsize
number Maximum size for bulk Tiles
Examples
const grid = slippyGrid.bulk([-180.0, -90.0, 180, 90], 3, 8, 5000)
const {value, done} = grid.next()
//=value Array<[x, y, z]>
//=done true/false
Returns Iterator<Array<Tile>> Bulk Iterable Grid of Tiles from extent
levels
Creates a grid level pattern of arrays
Parameters
extent
(BBox | Array<BBox> | GeoJSON) BBox [west, south, east, north] order or GeoJSON PolygonminZoom
number Minimum ZoommaxZoom
number Maximum Zoom
Examples
const levels = slippyGrid.levels([-180.0, -90.0, 180, 90], 3, 8)
//=levels
Returns Array<GridLevel> Grid Level
count
Counts the total amount of tiles from a given BBox
Parameters
extent
(BBox | Array<BBox> | GeoJSON) BBox [west, south, east, north] order or GeoJSON PolygonminZoom
number Minimum ZoommaxZoom
number Maximum Zoomquick
number Enable quick count if greater than number (optional, default1000
)
Examples
const count = slippyGrid.count([-180.0, -90.0, 180, 90], 3, 8)
//=count 563136
Returns number Total tiles from BBox