【发布时间】:2018-01-10 20:24:05
【问题描述】:
我很抱歉问这个问题,因为它已经回答了好几次了。我阅读了其中的许多内容,但我仍然无法将其与我的案例联系起来。
我有两个纬度和经度坐标,我需要将它们映射到 x-y 平面(以米为单位),其中一个是原点。
使用库函数,我得到了它们之间的距离。我尝试使用勾股定理来解决 x 和 y:
d = 2 个坐标之间的距离
y = 111.320 * (lat2 - lat1)
x = sqrt(d^2 - y^2)
问题在于这不是很准确,因为 111.320 是以公里为单位的平均值,而 lat2 和 lat1 之间的距离以米为单位(通常小于 10),这严重扭曲了结果。
有没有更准确的方法来做到这一点?任何帮助将不胜感激。
【问题讨论】:
-
你有距离,用 'atan' 函数得到角度,然后将 cos(angle)*distance 添加到 PlaneX 和 sin(angle)*distance 到 PlaneY。
-
这里的问题是您没有考虑球极坐标系的固有曲率。你们很多人想要的是 墨卡托投影:mathworld.wolfram.com/MercatorProjection.html
-
我找到了一个似乎对这个问题进行了广泛描述的参考资料,但也许你也遇到过这个问题:movable-type.co.uk/scripts/latlong.html
-
@meowgoesthedog 感谢您的链接。我正在处理的距离通常小于 10m。曲率对数值影响大吗?
-
@dmr07 如果他们总是那么短,那么根本不会(除非你在两极)