计算,下一个纬度

Calculate, next latitude

本文关键字:纬度 下一个 计算      更新时间:2023-09-26

我对Lat/Long计算很陌生。我正在努力计算下一个经纬度。考虑到要行驶的距离、方向(航向)和当前纬度/经度。

这就是我在JS中的公式:

function nextLat(lat, brng, d) {
    var clat = Math.asin( Math.sin(lat)*Math.cos(d/R) + Math.cos(lat)*Math.sin(d/R)*Math.cos(brng.toRad()) );
    return clat;
}

其中:lat-当前纬度brng-是方向R-地球半径,单位为kmsd-行驶距离

此输入Lat为:25.30977055我除了25.313055555555557的值,但我得到的是:0.1810335115243139

我的输入是Radians。我一直在挠头,根本不知道自己做错了什么。

我真的很感激这里的帮助。

谢谢!

对于短距离,如果你可以假设测地线和常方位是一样的,那么答案是:

clat = lat + sin(brng) * d/R

其中brng=0表示东部,90表示北部,180表示西部,270表示南部。

对于较长的距离,推测这个人是沿着测地线旅行的。