tilebelt-wgs84
v1.1.4
Published
Simple tile utilities for WGS84 / EPSG:4326
Downloads
155
Readme
tilebelt-wgs84
Simple tile utilities for WGS84 (EPSG:4326). Inspired by tilebelt which is for web mercator (EPSG:3857).
Install
npm install tilebelt-wgs84
Usage
import tilebelt from "tilebelt-wgs84";
// [x, y, z]
const tile = [10, 15, 8];
console.log(tilebelt.tileToGeoJSON(tile));
// [lngMin, latMin, lngMax, latMax]
const bbox = [-118.125, -39.375, -106.875, -28.125];
console.log(tilebelt.bboxToTiles(bbox, 4));
API
| function | description | | ----------------------------------- | -------------------------------------------------------------------- | | tileToGeoJSON(tile) | Get a geojson representation of a tile | | tileToBBox(tile) | Get the bbox of a tile | | bboxToTiles(bbox, zoom) | Gets tiles needed to cover a bbox | | getChildren(tile) | Get the 4 tiles one zoom level higher (2 tiles at zoom 0) | | getParent(tile) | Get the tile one zoom level lower | | getSiblings(tile) | Get the 3 sibling tiles for a tile (1 sibling at zoom 0) | | hasTile(tiles, tile) | Check to see if an array of tiles contains a tile | | tilesEqual(tileA, tileB) | Check to see if two tiles are the same | | tileToQuadkey(tile) | Get the quadkey for a tile | | quadkeyToTile(quadkey) | Get the tile for a quadkey | | pointToTile(lng, lat, zoom) | Get the tile for a point at a specified zoom level | | pointToTileFraction(lng, lat, zoom) | Get the precise fractional tile location for a point at a zoom level |
Additional utility functions | function | description | | --- | --- | | normalizeLng(number) | Convert longitude so that -180 is 0 and 180 is 1 | | normalizeLat(number) | Convert latitude so that 90 is 0 and -90 is 1 | | getExtent(zoom) | Get the total x (columns) and y (rows) tiles at a zoom level | | bboxesIntersect | Checks if two bboxes intersect | | intersectBboxes(bbox, bbox) | Get the intersection of two bboxes |
Tests
npm run lint
npm run test