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

java實現(xiàn)計算地理坐標(biāo)之間的距離

 更新時間:2015年03月13日 14:27:21   投稿:hebedich  
java實現(xiàn)計算地理坐標(biāo)之間的距離,主要是通過計算兩經(jīng)緯度點之間的距離來實現(xiàn),有需要的小伙伴參考下吧

java實現(xiàn)計算兩經(jīng)緯度點之間的距離,直接上代碼,具體解釋請參考注釋

復(fù)制代碼 代碼如下:

package com.jttx.poi.utils;
import com.jttx.poi.entity.Point;
/**
 * Created by louis on 2014/9/2.
 */
public class GeoUtils {
    /**
     * 計算兩經(jīng)緯度點之間的距離(單位:米)
     * @param lng1  經(jīng)度
     * @param lat1  緯度
     * @param lng2
     * @param lat2
     * @return
     */
    public static double getDistance(double lng1,double lat1,double lng2,double lat2){
        double radLat1 = Math.toRadians(lat1);
        double radLat2 = Math.toRadians(lat2);
        double a = radLat1 - radLat2;
        double b = Math.toRadians(lng1) - Math.toRadians(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 * 6378137.0;// 取WGS84標(biāo)準(zhǔn)參考橢球中的地球長半徑(單位:m)
        s = Math.round(s * 10000) / 10000;
        return s;
    }
    /**
     * 計算TP值
     * @param curPoint      當(dāng)前點
     * @param relatedPoint  偏移點
     * @param isGeography   是否是地理坐標(biāo) false為2d坐標(biāo)
     * @return              tp值
     */
    public static double getDirAngle(Point curPoint,Point relatedPoint,boolean isGeography){
        double result = 0;
        if(isGeography){
            double y2 = Math.toRadians(relatedPoint.getLat());
            double y1 = Math.toRadians(curPoint.getLat());
            double alpha = Math.atan2(relatedPoint.getLat() - curPoint.getLat(), (relatedPoint.getLng() - curPoint.getLng()) * Math.cos((y2 - y1) / 2));//緯度方向乘以cos(y2-y1/2)
            double delta =alpha<0?(2*Math.PI+alpha):alpha;
            result = Math.toDegrees(delta);
        }else {
            double alpha = Math.atan2(relatedPoint.getLat() - curPoint.getLat(), relatedPoint.getLng() - curPoint.getLng());
            double delta=alpha<0?(2*Math.PI+alpha):alpha;
            result = Math.toDegrees(delta);
        }
        return result;
    }
    public static void main(String[] args) {
        System.out.println(getDistance(121.446014,31.215937,121.446028464238,31.2158502442799  ));
    }
}

以上就是本文的全部內(nèi)容了,希望大家能夠喜歡。

相關(guān)文章

  • Java中方法名稱和泛型相同的用法示例

    Java中方法名稱和泛型相同的用法示例

    這篇文章主要介紹了Java中方法名稱和泛型相同的用法,結(jié)合實例形式分析了泛型替代方法名稱的相關(guān)使用技巧,需要的朋友可以參考下
    2019-08-08
  • Java中的接口多繼承機(jī)制

    Java中的接口多繼承機(jī)制

    大家好,本篇文章主要講的是Java中的接口多繼承機(jī)制,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-02-02
  • Spring Boot容器加載時執(zhí)行特定操作(推薦)

    Spring Boot容器加載時執(zhí)行特定操作(推薦)

    這篇文章主要介紹了Spring Boot容器加載時執(zhí)行特定操作及spring內(nèi)置的事件,需要的朋友可以參考下
    2018-01-01
  • SpringMVC中的ConversionServiceExposingInterceptor工具類解析

    SpringMVC中的ConversionServiceExposingInterceptor工具類解析

    這篇文章主要介紹了SpringMVC中的ConversionServiceExposingInterceptor工具類解析,ConversionServiceExposingInterceptor是Spring MVC的一個HandlerInterceptor,用于向請求添加一個屬性,需要的朋友可以參考下
    2023-12-12
  • MyBatis實現(xiàn)高級映射的示例代碼

    MyBatis實現(xiàn)高級映射的示例代碼

    高級映射主要還是映射,只是映射中的數(shù)據(jù)關(guān)系復(fù)雜了,其中就包括一對一、一對多、多對多的關(guān)系,本文主要介紹了MyBatis實現(xiàn)高級映射的示例代碼,感興趣的可以了解一下
    2024-06-06
  • Spring中的@Repository注解源碼詳解

    Spring中的@Repository注解源碼詳解

    這篇文章主要介紹了Spring中的@Repository注解詳解,@Repository注解修飾哪個類,則表明這個類具有對對象進(jìn)行增刪改查的功能,而且@Repository是@Component注解的一個派生品,所以被@Repository注解的類可以自動的被@ComponentScan通過路徑掃描給找到,需要的朋友可以參考下
    2023-10-10
  • Java中的super關(guān)鍵字_動力節(jié)點Java學(xué)院整理

    Java中的super關(guān)鍵字_動力節(jié)點Java學(xué)院整理

    這篇文章主要介紹了Java中的super關(guān)鍵字的相關(guān)知識,需要的朋友參考下
    2017-04-04
  • Java 線程狀態(tài)和等待喚醒機(jī)制和線程池的實現(xiàn)

    Java 線程狀態(tài)和等待喚醒機(jī)制和線程池的實現(xiàn)

    這篇文章主要介紹了Java 線程狀態(tài)和等待喚醒機(jī)制和線程池的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • SpringBoot接受參數(shù)相關(guān)注解方式

    SpringBoot接受參數(shù)相關(guān)注解方式

    SpringBoot接受參數(shù)的注解包括@PathVariable、@RequestHeader、@RequestParameter、@CookieValue、@RequestBody、@RequestAttribute和@SessionAttribute等,每個注解都有詳細(xì)的使用方法和示例代碼
    2024-12-12
  • spring注解@Import用法詳解

    spring注解@Import用法詳解

    這篇文章主要介紹了spring注解@Import用法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10

最新評論

武安市| 应用必备| 金川县| 平南县| 孟连| 田阳县| 诸城市| 汉中市| 朝阳市| 得荣县| 白水县| 阿荣旗| 巍山| 浮山县| 龙江县| 桦川县| 安阳县| 厦门市| 莱西市| 保康县| 平江县| 栖霞市| 临城县| 天全县| 马山县| 萍乡市| 鄂托克旗| 乌兰浩特市| 陇川县| 大冶市| 台东市| 泸西县| 岳西县| 太仆寺旗| 岳普湖县| 石柱| 福贡县| 平原县| 宁南县| 开封市| 高碑店市|