【问题标题】:openlayers coordinate format to longitude, latitude (decimal)openlayers坐标格式为经度、纬度(十进制)
【发布时间】:2013-06-09 05:09:10
【问题描述】:

我从以 Openlayers 格式放置的 web 服务坐标获取?

坐标看起来像(在荷兰):

    X = 217382.52712700056
    Y = 576653.00667405012

我想将它们转换为经度/纬度(十进制格式),例如 5.34343、51.34356

我认为它是球形墨卡托米的格式。我用这个公式来转换它。但结果毫无意义。

Dim mercX As Double = 217382.52712700056
Dim mercY As Double = 576653.00667405012
Dim rMajor As Integer = 6378137
Dim shift As Double = Math.PI * rMajor
Dim lon As Double = mercX / shift * 180.0
Dim lat As Double = mercY / shift * 180.0
lat = 180 / Math.PI * (2 * Math.Atan(Math.Exp(lat * Math.PI / 180.0)) - Math.PI / 2.0)

希望有人可以进一步帮助我......

【问题讨论】:

    标签: geolocation openlayers geocoding


    【解决方案1】:

    如果这些值来自 OpenLayers(我假设您是从一些底图(如 google 或 bing,所以是球形墨卡托底图)获得它们),它们应该以米为单位,基于 EPSG:900913(或 EPSG:3857)。无论如何,很高兴知道您是如何获得这些值的。我试过这个网站:

    http://cs2cs.mygeodata.eu/
    

    但输出是:

    longitude = 1.95278046619
    latitude = 5.17311926477
    

    这也没有任何意义。我附上了一张图片,向您展示我做了什么。

    希望这会有所帮助,

    【讨论】:

      猜你喜欢
      • 2013-04-14
      • 2013-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-04
      • 2011-11-24
      • 1970-01-01
      相关资源
      最近更新 更多