UNPKG

leaflet

Version:

JavaScript library for mobile-friendly interactive maps

28 lines (21 loc) 722 B
/* * Spherical Mercator is the most popular map projection, used by EPSG:3857 CRS used by default. */ L.Projection.SphericalMercator = { MAX_LATITUDE: 85.0511287798, project: function (latlng) { // (LatLng) -> Point var d = L.LatLng.DEG_TO_RAD, max = this.MAX_LATITUDE, lat = Math.max(Math.min(max, latlng.lat), -max), x = latlng.lng * d, y = lat * d; y = Math.log(Math.tan((Math.PI / 4) + (y / 2))); return new L.Point(x, y); }, unproject: function (point) { // (Point, Boolean) -> LatLng var d = L.LatLng.RAD_TO_DEG, lng = point.x * d, lat = (2 * Math.atan(Math.exp(point.y)) - (Math.PI / 2)) * d; return new L.LatLng(lat, lng); } };