通过经纬度坐标计算距离

工作之余,贡献给大家一个公式,教你如何计算地球上两个点之间的距离。


以下公式输入两点的经纬度坐标即可计算,计算出的单位是  米


    public static double getDistance(double lat1, double lon1, double lat2, double lon2){
		double radLat1 = lat1 * Math.PI / 180;
		double radLat2 = lat2 * Math.PI / 180;
		double a = radLat1 - radLat2;
		double b = lon1 * Math.PI / 180 - lon2 * Math.PI / 180;
		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 * 6378137.0;// 取WGS84标准参考椭球中的地球长半径(单位:m)
		s = Math.round(s * 10000) / 10000;

		return s;
    }


你可能感兴趣的:(工作)