1.在pom.XML文件添加依赖
<dependency>
<groupId>org.gavaghan</groupId>
<artifactId>geodesy</artifactId>
<version>1.1.3</version>
</dependency>
2.在项目上写一个方法类
public class GlobalUtils {
/**
* 通过纬度和经度计算两点之间的距离
* @param gpsFrom gpsTo ellipsoid
* @return
*/
public static double getDistanceMeter(GlobalCoordinates gpsFrom, GlobalCoordinates gpsTo, Ellipsoid ellipsoid)
{
//创建GeodeticCalculator,调用计算方法,传入坐标系、经纬度用于计算距离
GeodeticCurve geoCurve = new GeodeticCalculator().calculateGeodeticCurve(ellipsoid, gpsFrom, gpsTo);
return geoCurve.getEllipsoidalDistance();
}
}
3.在项目应用即可
//计算客户与分店的距离
GlobalCoordinates cstsource = new GlobalCoordinates( Double.parseDouble(cstLocation.getLat()), Double.parseDouble(cstLocation.getLng()));
GlobalCoordinates boOfficesource = new GlobalCoordinates(Double.parseDouble(office.getLat()), Double.parseDouble(office.getLng()));
//两点之间的距离
double distanceMeter = GlobalUtils.getDistanceMeter(cstsource, boOfficesource, Ellipsoid.Sphere);
lat是纬度 lng是经度