計算兩經緯度之間的距離

2021-07-27 22:39:57 字數 736 閱讀 6382

今天有個任務是在請求商家詳情的時候需要求使用者離商家的距離(也就是計算兩經緯度之間的距離,套用了下面的公式解決了問題)

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;

給定經緯度計算距離 根據兩點經緯度計算距離

根據兩點經緯度計算距離 這些經緯線是怎樣定出來的呢?地球是在不停地繞地軸旋轉 地軸是一根通過地 球南北兩極和地球中心的 假想線 在地球中腰畫乙個與地軸垂直的大圓圈,使圈上的每一點都和南北兩 極的距離相等,這個圓圈 就叫作 赤道 在赤道的南北兩邊,畫出許多和赤道平行的圓圈,就是 緯 圈 構成這些圓圈的...

JAVA計算兩個經緯度之間的距離

1 只不過是封裝好的乙個計算方法,計算的方式也就是上學時就學過的定理,老規矩直接貼 主要是方便實用,計算結果單位 公尺 public class maputils 計算兩個經緯度之間的距離 param lat1 param lng1 param lat2 param lng2 return publ...

PHP根據經緯度計算兩地之間的距離

php計算兩點的距離,無外乎兩種方法 一種是呼叫地圖介面,其次是純數學計算 計算球面上兩個點之間的距離 方法一 呼叫介面 地圖api會有自己的演算法,可能會根據實際情況路線計算距離,比如說不能直接直線到達,需要繞行,會計算繞行的路線的長度。但缺點是需要開發金鑰 key 而且一般來說每天會有請求次數限...