首页 > 代码库 > 根据经纬度算距离
根据经纬度算距离
public double getDistance(double startLat,double startLong,double endLat,double endLong){
//startLong 起始坐标点经度
//startLat 起始坐标点维度
//endLong 目标坐标点经度
//endLat 目标坐标点维度 double lat1 = (Math.PI/180)*startLat; double lat2 = (Math.PI/180)*endLat; double lon1 = (Math.PI/180)*startLong; double lon2 = (Math.PI/180)*endLong; //地球半径 double R = 6371; //两点间距离 km,如果想要米的话,结果*1000就可以了 double d = Math.acos(Math.sin(lat1)*Math.sin(lat2)+Math.cos(lat1)*Math.cos(lat2)*Math.cos(lon2-lon1))*R; //double s=R*Math.acos(Math.cos(lat1*Math.PI/180 ) * Math.cos(lat2*Math.PI/180) * Math.cos(lng1*Math.PI/180 -lng2*Math.PI/180) + Math.sin(lat1*Math.PI/180 ) * Math.sin(lat2*Math.PI/180)); return d*1000;
}
根据经纬度算距离
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。