最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java編程獲取經(jīng)緯度之間距離的方法

 更新時間:2015年11月05日 14:44:38   作者:awj3584  
這篇文章主要介紹了Java編程獲取經(jīng)緯度之間距離的方法,涉及Java數(shù)學運算的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了Java編程獲取經(jīng)緯度之間距離的方法。分享給大家供大家參考,具體如下:

public class GeoUtil {
 /**
  * 根據(jù)經(jīng)緯度和距離返回一個矩形范圍
  * 
  * @param lng
  *  經(jīng)度
  * @param lat
  *  緯度
  * @param distance
  *  距離(單位為米)
  * @return [lng1,lat1, lng2,lat2] 矩形的左下角(lng1,lat1)和右上角(lng2,lat2)
  */
 public static double[] getRectangle(double lng, double lat, long distance) {
  float delta = 111000;
  if (lng != 0 && lat != 0) {
   double lng1 = lng - distance
     / Math.abs(Math.cos(Math.toRadians(lat)) * delta);
   double lng2 = lng + distance
     / Math.abs(Math.cos(Math.toRadians(lat)) * delta);
   double lat1 = lat - (distance / delta);
   double lat2 = lat + (distance / delta);
   return new double[] { lng1, lat1, lng2, lat2 };
  } else {
   // TODO ZHCH 等于0時的計算公式
   double lng1 = lng - distance / delta;
   double lng2 = lng + distance / delta;
   double lat1 = lat - (distance / delta);
   double lat2 = lat + (distance / delta);
   return new double[] { lng1, lat1, lng2, lat2 };
  }
 }
 /**
  * 得到兩點間的距離 米
  * 
  * @param lat1
  * @param lng1
  * @param lat2
  * @param lng2
  * @return
  */
 public static double getDistanceOfMeter(double lat1, double lng1,
   double lat2, double lng2) {
  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) / 10;
  return s;
 }
 
 private static double rad(double d) {
  return d * Math.PI / 180.0;
 }
 /**
  * 地球半徑:6378.137KM
  */
 private static double EARTH_RADIUS = 6378.137;
}

希望本文所述對大家Java程序設計有所幫助。

相關文章

  • Java?Map初始化并賦值的幾種簡短寫法

    Java?Map初始化并賦值的幾種簡短寫法

    在Java中初始化一個Map并賦值可以通過多種方式完成,下面這篇文章主要介紹了Java?Map初始化并賦值的幾種簡短寫法,文中給出了詳細的代碼示例,需要的朋友可以參考下
    2025-03-03
  • 徹底理解Java中的ThreadLocal

    徹底理解Java中的ThreadLocal

     ThreadLocal翻譯成中文比較準確的叫法應該是:線程局部變量。使用這個工具類可以很簡潔地編寫出優(yōu)美的多線程程序。 接下來通過本文給大家介紹Java中的ThreadLocal,需要的朋友可以參考下
    2017-03-03
  • Java的Integer緩存池用法

    Java的Integer緩存池用法

    Java的Integer緩存池主要為了提升性能和節(jié)省內(nèi)存,它緩存了-128到127范圍內(nèi)的Integer對象,因此這些對象在比較時會直接比較引用,而不是值,其他包裝類如Byte、Short、Character也有類似的緩存池
    2025-02-02
  • SpringBoot實現(xiàn)定時任務的三種方式小結(jié)

    SpringBoot實現(xiàn)定時任務的三種方式小結(jié)

    這篇文章主要介紹了SpringBoot實現(xiàn)定時任務的三種方式小結(jié),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java那點事——StringBuffer與StringBuilder原理與區(qū)別

    Java那點事——StringBuffer與StringBuilder原理與區(qū)別

    本文給大家分享StringBuffer與StringBuilder的區(qū)別,它們的應用場景是什么?非常不錯,面試考官經(jīng)??嫉囊粋€問題,有需要的朋友跟著腳本之家小編一起學習吧
    2016-06-06
  • Win10系統(tǒng)下配置java環(huán)境變量的全過程

    Win10系統(tǒng)下配置java環(huán)境變量的全過程

    這篇文章主要給大家介紹了關于Win10系統(tǒng)下配置java環(huán)境變量的相關資料,文中通過圖文介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • java普通項目讀取不到resources目錄下資源文件的解決辦法

    java普通項目讀取不到resources目錄下資源文件的解決辦法

    這篇文章主要給大家介紹了關于java普通項目讀取不到resources目錄下資源文件的解決辦法,Web項目中應該經(jīng)常有這樣的需求,在maven項目的resources目錄下放一些文件,比如一些配置文件,資源文件等,需要的朋友可以參考下
    2023-09-09
  • mybatis中使用oracle關鍵字出錯的解決方法

    mybatis中使用oracle關鍵字出錯的解決方法

    這篇文章主要給大家介紹了關于mybatis中使用oracle關鍵字出錯的解決方法,文中通過示例代碼將解決的方法介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起看看吧。
    2017-08-08
  • 基于java變量和作用域以及成員變量的默認初始化(詳解)

    基于java變量和作用域以及成員變量的默認初始化(詳解)

    下面小編就為大家介紹一下java變量和作用域以及成員變量的默認初始化,具有很好的參考價值,希望對大家有所幫助
    2017-11-11
  • java中有關構造方法中的輸出

    java中有關構造方法中的輸出

    這篇文章主要介紹了java中有關構造方法中的輸出,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10

最新評論

屯门区| 枣强县| 海阳市| 沙雅县| 松潘县| 文水县| 湘阴县| 武安市| 江口县| 绥德县| 南郑县| 福贡县| 京山县| 龙南县| 大荔县| 定安县| 左权县| 开封市| 吉木乃县| 甘谷县| 上饶县| 宣威市| 仁布县| 九台市| 玉林市| 阿拉善右旗| 洛川县| 台山市| 沙坪坝区| 东山县| 灵宝市| 晋州市| 潼南县| 新沂市| 晋宁县| 旬邑县| 肥乡县| 正镶白旗| 克东县| 含山县| 龙口市|