0
我將使用Haversine公式找到兩個城市之間的距離。以下是 是VC++中的代碼。使用Haversine公式計算兩個城市的距離 - 如何處理負經度
但我找不到點(18.567367,-68.363431)和(33.636719,-84.428067)之間的距離[第一個值是緯度,第二個是經度]。 它給出了類似-1。#IND。
你能告訴我如何處理這個問題嗎?
下面是代碼:
double deg2rad(double deg) {
return (deg * pi/180);
};
double TravelDistance(double lat1d, double lon1d, double lat2d, double lon2d) {
double lat1r, lon1r, lat2r, lon2r, u, v,dblDistance;
lat1r = deg2rad(lat1d);
lon1r = deg2rad(lon1d);
lat2r = deg2rad(lat2d);
lon2r = deg2rad(lon2d);
u = sin(lat2r - lat1r);
v = sin(lon2r - lon1r);
return (2.0 * earthRadiusKm * asin(sqrt(u * u + cos(lat1r) * cos(lat2r) * v * v)))};
預先感謝.... !!