Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | 1x 1428x 1428x 1428x 562x 1428x 561x 1428x 1x | /** **************************************************************************************************** * File: toGeoJSON.js * Project: geohash * @author Nick Soggin <iSkore@users.noreply.github.com> on 19-Feb-2019 *******************************************************************************************************/ 'use strict'; const geohashToBBox = require( './geohashToBBox' ); /** * toGeoJSON * @description * convert geohash to GeoJSON * @param {string} hash - geohash to convert * @param {object} opts - geojson options * @param {boolean} [opts.includeGeohashAsProperty=false] * include geohash string as a property in the GeoJSON * @param {boolean} [opts.includeFeatureBBox=false] * include bbox as a property in the GeoJSON * @returns {*} geohash to geojson */ function toGeoJSON( hash, opts = { includeGeohashAsProperty: false, includeFeatureBBox: false } ) { const bbox = geohashToBBox( hash ); const data = { type: 'Feature', properties: {}, geometry: { type: 'Polygon', coordinates: [ [ [ bbox[ 0 ], bbox[ 1 ] ], [ bbox[ 2 ], bbox[ 1 ] ], [ bbox[ 2 ], bbox[ 3 ] ], [ bbox[ 0 ], bbox[ 3 ] ], [ bbox[ 0 ], bbox[ 1 ] ] ] ] } }; if ( opts.includeGeohashAsProperty ) { data.properties.geohash = hash; } if ( opts.includeFeatureBBox ) { data.bbox = bbox; } return data; } module.exports = toGeoJSON; |