| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});// index.ts
- var _meta = require('@turf/meta');
- var _helpers = require('@turf/helpers');
- var _clone = require('@turf/clone');
- function toMercator(geojson, options = {}) {
- return convert(geojson, "mercator", options);
- }
- function toWgs84(geojson, options = {}) {
- return convert(geojson, "wgs84", options);
- }
- function convert(geojson, projection, options = {}) {
- options = options || {};
- var mutate = options.mutate;
- if (!geojson) throw new Error("geojson is required");
- if (Array.isArray(geojson) && _helpers.isNumber.call(void 0, geojson[0]))
- geojson = projection === "mercator" ? convertToMercator(geojson) : convertToWgs84(geojson);
- else {
- if (mutate !== true) geojson = _clone.clone.call(void 0, geojson);
- _meta.coordEach.call(void 0, geojson, function(coord) {
- var newCoord = projection === "mercator" ? convertToMercator(coord) : convertToWgs84(coord);
- coord[0] = newCoord[0];
- coord[1] = newCoord[1];
- });
- }
- return geojson;
- }
- function convertToMercator(lonLat) {
- var D2R = Math.PI / 180, A = 6378137, MAXEXTENT = 20037508342789244e-9;
- var adjusted = Math.abs(lonLat[0]) <= 180 ? lonLat[0] : lonLat[0] - sign(lonLat[0]) * 360;
- var xy = [
- A * adjusted * D2R,
- A * Math.log(Math.tan(Math.PI * 0.25 + 0.5 * lonLat[1] * D2R))
- ];
- if (xy[0] > MAXEXTENT) xy[0] = MAXEXTENT;
- if (xy[0] < -MAXEXTENT) xy[0] = -MAXEXTENT;
- if (xy[1] > MAXEXTENT) xy[1] = MAXEXTENT;
- if (xy[1] < -MAXEXTENT) xy[1] = -MAXEXTENT;
- return xy;
- }
- function convertToWgs84(xy) {
- var R2D = 180 / Math.PI;
- var A = 6378137;
- return [
- xy[0] * R2D / A,
- (Math.PI * 0.5 - 2 * Math.atan(Math.exp(-xy[1] / A))) * R2D
- ];
- }
- function sign(x) {
- return x < 0 ? -1 : x > 0 ? 1 : 0;
- }
- exports.toMercator = toMercator; exports.toWgs84 = toWgs84;
- //# sourceMappingURL=index.cjs.map
|