【发布时间】:2014-06-04 19:02:12
【问题描述】:
我想计算谷歌地图上两条路径线之间的角度。我有线条端点的经纬度坐标。 请提出建议,如果我可以使用 Google 地图上提供的其他信息来执行此操作。
【问题讨论】:
-
这实际上是一个非常棘手的问题,有很多上下文相关的信息。但是,如果线条相当短且靠近赤道并且您不需要惊人的精度,那么只需将纬度/经度坐标视为笛卡尔坐标并像在平面上一样计算它们之间的角度就足够了。 en.wikipedia.org/wiki/World_Geodetic_System 也可能有用。
-
哦,为了更准确地对待笛卡尔方法,请尝试将经度增量乘以纬度的余弦。 (不过,这在两极附近仍然行不通。)
-
您也可以将 lat/long 转换为 x/y/z 并将其视为正常的 3D 矢量,尽管这将是通过 3D 空间的角度(“as the neutrino flies” ),而不是地图投影的角度(“乌鸦飞”)。
-
如何将 lat long 转换为 x/y/z 是否有任何公式?
-
这很复杂。请参阅我链接到的 wiki 文章以了解正确的方法(这很困难),或者您可以将其作为两个普通 3D 旋转的组合来完成;从 的一个点开始,然后绕 X 轴旋转纬度,然后绕 Y 轴旋转经度。
标签: ios google-maps geolocation gis google-maps-sdk-ios