今天有個任務是在請求商家詳情的時候需要求用戶離商家的距離(也就是計算兩經緯度之間的距離,套用了下面的公式解決了問題)
public class Distance {
PRivate final static double PI = 3.14159265358979323; // 圓周率 private final static double R = 6371229; // 地球的半徑 /** * 獲取兩個經緯點的距離 * @param longt1 經度1 * @param lat1 緯度1 * @param longt2 經度2 * @param lat2 緯度2 * @return distance 直線距離 */ public static double getDistance(double longt1, double lat1, double longt2,double lat2) { double x, y, distance; x = (longt2 - longt1) * PI * R * Math.cos(((lat1 + lat2) / 2) * PI / 180) / 180; y = (lat2 - lat1) * PI * R / 180; distance = Math.hypot(x, y); return distance;}
}
新聞熱點
疑難解答