tilebelt-wgs84
TypeScript icon, indicating that this package has built-in type declarations

1.0.4 • Public • Published

tilebelt-wgs84

build codecov npm

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
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

Readme

Keywords

Package Sidebar

Install

npm i tilebelt-wgs84

Weekly Downloads

54

Version

1.0.4

License

MIT

Unpacked Size

45.7 kB

Total Files

10

Last publish

Collaborators

  • bwswedberg