所以,我有以下函数,它是从网上找到的一个公式改编而来,用于计算两个经纬度坐标之间在球形地球上的距离(单位为英里):
public static double distance (double lat1, double lon1, double lat2, double lon2) {
double theta = toRadians(lon1-lon2);
lat1 = toRadians(lat1);
lon1 = toRadians(lon1);
lat2 = toRadians(lat2);
lon2 = toRadians(lon2);
double dist = sin(lat1)*sin(lat2) + cos(lat1)*cos(lat2)*cos(theta);
dist = toDegrees(acos(dist)) * 60 * 1.1515 * 1.609344 * 1000;
return dist;
}
据我所知,这个代码完全可以正常工作。我需要的是第二个函数,它使用与地球几何模型完全相同的方式,接受一个经纬度对[A]、一个航向和一个距离,并输出一个新的经纬度对[B],以便如果您从点[A]出发,在给定的航向上行驶给定的距离,您会到达点[B]。
这就是我的几何技能完全消失的地方 :)
非常感谢您的任何帮助!
谢谢, -Dan