package com.moral.util;
|
|
import org.gavaghan.geodesy.Ellipsoid;
|
import org.gavaghan.geodesy.GeodeticCalculator;
|
import org.gavaghan.geodesy.GeodeticCurve;
|
import org.gavaghan.geodesy.GlobalCoordinates;
|
|
import org.springframework.stereotype.Component;
|
|
@Component
|
public class GeodesyUtils {
|
/**
|
* @param lat1 第一点纬度
|
* @param lng1 第一点经度
|
* @param lat2 第二点纬度
|
* @param lng2 第二点经度
|
* @return 功能:根据经纬度计算两点间距离,采用WGS84坐标系
|
*/
|
public static double getDistance(double lat1, double lng1, double lat2, double lng2) {
|
GlobalCoordinates source = new GlobalCoordinates(lat1, lng1);
|
GlobalCoordinates target = new GlobalCoordinates(lat2, lng2);
|
GeodeticCurve geoCurve = new GeodeticCalculator().calculateGeodeticCurve(Ellipsoid.WGS84, source, target);
|
return geoCurve.getEllipsoidalDistance();
|
}
|
}
|