【问题标题】:How do I determine the shortest path between a point and a line on a globe?如何确定地球上点和线之间的最短路径?
【发布时间】:2011-07-25 11:29:09
【问题描述】:

我想计算一个点和一个边界框之间的最小距离,该边界框表示地球上的经纬度区域。如果该点介于 min-long 和 max-long 之间,那么我可以计算纬度距离,这很容易,因为它是一个常数值。否则,我需要使用 Haversine 公式计算从我的点到最接近我的点的纵向线上的点的距离。我看到很多关于计算两点之间距离的信息,但关于点和线之间的距离,或者关于在一条线上找到离点最近的点的信息不多。

【问题讨论】:

    标签: algorithm geospatial


    【解决方案1】:

    你知道如何找到两点之间的距离。现在你只需要知道如何找到一个点到一个大圆的距离。诀窍是找到与整个大圆等距的点(北极与整个赤道等距的方式),找到从您的点到 that 的距离,然后减去 90 度(用a +/-,取决于您的点是否与您选择的极点在圆的同一侧)。

    一旦你掌握了这个技巧,请注意你正试图找到从一个点到恒定经度曲线的距离,这是一个大圆,其“极点”是赤道上与经度相差 90 度的点从曲线。

    (你可能需要画几张图,但其实没那么难。)

    【讨论】:

    • 所以目标点永远是我点方向上赤道90度经度上的点。当您说“从 90 度减去”时,我假设您的意思是从我选择的单位中减去 90 度的距离。谢谢,这很有帮助。现在我只需要确保我的算法在跨越国际日期变更线时能正常工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-19
    • 2017-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多