我想要计算一个城市的经度和纬度之间的距离以及另一个城市的经度和纬度的等式,用c ++,oop
答案 0 :(得分:2)
假设您正在寻找一个很大的弧距(鸟类飞行时最直接的路线),您需要的是Haversine公式: https://en.wikipedia.org/wiki/Haversine_formula
一个示例应用程序(使用您选择的任何编程语言重写应该很简单):
dlon = lon2 - lon1
dlat = lat2 - lat1
a = (sin(dlat/2))^2 + cos(lat1) * cos(lat2) * (sin(dlon/2))^2
c = 2 * a * tan2(sqrt(a), sqrt(1-a))
d = R * c //where R is the radius of the Earth