https://github.com/mapbox/tile-cover
Generate the minimum number of tiles to cover a geojson geometry
https://github.com/mapbox/tile-cover
Last synced: 3 months ago
JSON representation
Generate the minimum number of tiles to cover a geojson geometry
- Host: GitHub
- URL: https://github.com/mapbox/tile-cover
- Owner: mapbox
- License: mit
- Created: 2014-08-05T22:21:40.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2020-09-11T01:18:38.000Z (almost 5 years ago)
- Last Synced: 2024-10-28T04:25:35.352Z (8 months ago)
- Language: JavaScript
- Homepage:
- Size: 2.22 MB
- Stars: 189
- Watchers: 121
- Forks: 40
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
tile-cover
==========[](https://travis-ci.org/mapbox/tile-cover)
Generate the minimum number of tiles to cover a [GeoJSON Geometry](http://geojson.org/geojson-spec.html#geometry-objects).
### Install
```bash
npm install @mapbox/tile-cover
```### Usage
```js
var cover = require('@mapbox/tile-cover');
var poly = JSON.parse(fs.readFileSync('./poly.geojson'));
var limits = {
min_zoom: 4,
max_zoom: 9
};cover.geojson(poly.geom, limits);
cover.tiles(poly.geom, limits);
cover.indexes(poly.geom, limits);
```# API
## geojson(geom, limits)
Given a [geometry](http://geojson.org/geojson-spec.html#geometry-objects), create cells and return them in a format easily readable by any software that reads GeoJSON.
* `geom` (`Object`): GeoJSON geometry
* `limits` (`Object`): an object with min_zoom and max_zoom properties specifying the minimum and maximum level to be tiled.**Returns** `Object`, FeatureCollection of cells formatted as GeoJSON Features
## tiles(geom, limits)Given a [geometry](http://geojson.org/geojson-spec.html#geometry-objects), create cells and return them in their raw form, as an array of cell identifiers.
* `geom` (`Object`): GeoJSON geometry
* `limits` (`Object`): an object with min_zoom and max_zoom properties specifying the minimum and maximum level to be tiled.**Returns** `Array.>`, An array of tiles given as [x, y, z] arrays
## indexes(geom, limits)Given a [geometry](http://geojson.org/geojson-spec.html#geometry-objects), create cells and return them as quadkey indexes.
* `geom` (`Object`): GeoJSON geometry
* `limits` (`Object`): an object with min_zoom and max_zoom properties specifying the minimum and maximum level to be tiled.**Returns** `Array.`, An array of tiles given as quadkeys.
### Tests
```bash
npm test
```### Benchmarks
```bash
node bench.js
```### Examples
##### Polygons:

##### Lines:

##### Points:
