public
class
Distance
{
private
static
final
double
EARTH_RADIUS = 6378137;
private
static
double
rad(
double
d)
{
return
d * Math.PI / 180.0;
}
/**
根据两点间经纬度坐标(
double
值),计算两点间距离,单位为米
@param
lng1
@param
lat1
@param
lng2
@param
lat2
@return
public
static
double
GetDistance(
double
lng1,
double
lat1,
double
lng2,
double
lat2)
{
double
radLat1 = rad(lat1);
double
radLat2 = rad(lat2);
double
a = radLat1 - radLat2;
double
b = rad(lng1) - rad(lng2);
double
s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a/2),2) +
Math.cos(radLat1)*Math.cos(radLat2)*Math.pow(Math.sin(b/2),2)));
s = s * EARTH_RADIUS;
s = Math.round(s * 10000) / 10000;
return
s;
}
/**
@param
args
public
static
void
main(String[] args)
{
// TODO
自动生成方法存根
double
distance = GetDistance(121.491909,31.233234,121.411994,31.206134);
System.out.println("Distance is:"+distance);
}
}
java 两点经纬度计算两点间距离公式 java两点之间的距离
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。

提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
经纬度计算两点距离
使用 对上面的公式解释如下: Lung1 Lat1表示A点经纬度, Lung 单
git html 算法复杂度 scala i++