代码拉取完成,页面将自动刷新
#ifndef COMMON_H
#define COMMON_H
#include <math.h>
//#define RAD(d) ((d)*PI/180.0)
/**
* @brief EARTH RADIUS unit: 1km
*/
const double EARTH_RADIUS = 6371.004;
const double PI = 3.1415926;
class Common
{
public:
static double DEGREE(double d)
{
return ((d) * 180 / PI);
}
static double RADIAN(double d)
{
return ((d)*PI/180.0);
}
static float Distance(double lat1, double lng1, double lat2, double lng2)
{
float s;
double a,b;
double radLat1,radLat2,radLng1,radLng2;
radLat1 = RADIAN(lat1);
radLat2 = RADIAN(lat2);
radLng1 = RADIAN(lng1);
radLng2 = RADIAN(lng2);
a = radLat1 - radLat2;//radLat1 - radLat2;
b = radLng1 - radLng2;//RAD(lng1) - RAD(lng2);
s = 2 * asin(sqrt(pow(sin(a/2),2) + cos(lat1)*cos(lat2)*pow(sin(b/2),2)));
s = s * EARTH_RADIUS;
return s;
}
};
#endif // COMMON_H
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。