计算两个坐标之间距离的点

时间:2019-10-15 15:14:16

标签: coordinates geospatial geo

给定两个点AB以及距离d,我试图计算C和{{1}之间的一个点A }并与B点相距d

enter image description here

我当时正在考虑使用Thales theoreme,但是有没有更好/更简单的解决方案?

干杯!

1 个答案:

答案 0 :(得分:0)

确定Thales(截距)定理是一种合适的方法,当两条相交线之一是坐标轴(例如: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))

我的脑袋很快就通过了,所以请仔细检查一下我的触发器。