【发布时间】:2017-12-22 09:26:05
【问题描述】:
有没有办法将 webMercator 坐标转换为 lat lng?
{ x: 0.524845254783345, y: 0.3454821604047296 } => {lat: --, lng:--}
【问题讨论】:
标签: maps leaflet coordinates converter
有没有办法将 webMercator 坐标转换为 lat lng?
{ x: 0.524845254783345, y: 0.3454821604047296 } => {lat: --, lng:--}
【问题讨论】:
标签: maps leaflet coordinates converter
您可以使用proj4.js,它专为转换坐标而设计。
投影可以由众所周知的文本 (wkt) 字符串或 proj4 字符串定义(两者都可以在 spatialreference.org 上找到)。下面的示例使用后一种选项。坐标可以有两种格式:[x,y] 或 {x:x,y:y}。
这是一个演示,您的坐标与来自 spatialreference.org 的投影定义:
var coordinate = { x: 0.524845254783345, y: 0.3454821604047296 };
var webMercator = "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs";
var wgs84 = "+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees";
var newCoord = proj4(webMercator,wgs84,coordinate);
console.log(newCoord);
<script src="https://cdnjs.cloudflare.com/ajax/libs/proj4js/2.4.4/proj4.js"></script>
(你的坐标非常接近[0,0],小输出值不是错误)。
【讨论】: