根据提供的两个经纬度计算距离(米)

java 复制代码
public static final double RAD = Math.PI / 180;
public static final double EARTH_RADIUS = 6378137;
public static double getDistance(double lng1, double lat1, double lng2, double lat2) {
        double radLat1 = lat1 * RAD;
        double radLat2 = lat2 * RAD;
        double a = radLat1 - radLat2;
        double b = (lng1 - lng2) * RAD;
        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) / 10000;
        return Math.abs(s);
}
相关推荐
陈文锦丫1 天前
MQ的学习
java·开发语言
乌暮1 天前
JavaEE初阶---线程安全问题
java·java-ee
爱笑的眼睛111 天前
GraphQL:从数据查询到应用架构的范式演进
java·人工智能·python·ai
liwulin05061 天前
【PYTHON-YOLOV8N】如何自定义数据集
开发语言·python·yolo
Seven971 天前
剑指offer-52、正则表达式匹配
java
代码or搬砖1 天前
RBAC(权限认证)小例子
java·数据库·spring boot
青蛙大侠公主1 天前
Thread及其相关类
java·开发语言
爱吃大芒果1 天前
Flutter 主题与深色模式:全局样式统一与动态切换
开发语言·javascript·flutter·ecmascript·gitcode
Coder_Boy_1 天前
DDD从0到企业级:迭代式学习 (共17章)之 四
java·人工智能·驱动开发·学习
2301_768350231 天前
MySQL为什么选择InnoDB作为存储引擎
java·数据库·mysql