【问题标题】:Calculate point at distance between two coordinates计算两个坐标之间距离的点
【发布时间】:2020-02-12 07:48:23
【问题描述】:

给定两个点 AB 以及距离 d,我正在尝试计算在 AB 之间的点 C 以及距离点 d 的点 A .

我在考虑使用泰利斯定理,但有更好/更简单的解决方案吗?

干杯!

【问题讨论】:

    标签: coordinates geospatial geo


    【解决方案1】:

    确定泰勒斯(截距)定理是一种合适的方法,并且当两条相交线之一是坐标轴(例如:latA)时,该定理的退化情况适用

    所以,步骤是:

    set a variable to the delta rise: deltalat = latB - latA 
    set a variable to the delta run: deltalng = lngB - lngA 
    compute the full (pythagorean) distance from A to B:  dist = sqrt(deltalat*deltalat + deltalng*deltalng) 
    compute angle from horizontal: ang= arcsin(deltalat/dist)
    compute new lat: latC = latA + (d * sin(ang))
    compute new lng: lngC = lngA + (d * cos(ang))
    

    我脑子里有点快,所以请仔细检查我的触发器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多