Java 计算经纬度是否在某个范围之内

Posted 初见如月

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 计算经纬度是否在某个范围之内相关的知识,希望对你有一定的参考价值。

/**
 * 计算地球上任意两点(经纬度)距离
 *
 * @param long1 前端传入的打卡第一点经度
 * @param lat1  前端传入的打卡第一点纬度
 * @param long2 范围之内的第二点经度
 * @param lat2  范围之内的第二点纬度
 * @return 返回距离 单位:米
 */
public static double distanceByLongNLat(double long1, double lat1, double long2, double lat2) 
    double a, b, R;
    //地球半径
    R = 6378137;
    lat1 = lat1 * Math.PI / 180.0;
    lat2 = lat2 * Math.PI / 180.0;
    a = lat1 - lat2;
    b = (long1 - long2) * Math.PI / 180.0;
    double d;
    double sa2, sb2;
    sa2 = Math.sin(a / 2.0);
    sb2 = Math.sin(b / 2.0);
    d = 2 * R * Math.asin(Math.sqrt(sa2 * sa2 + Math.cos(lat1) * Math.cos(lat2) * sb2 * sb2));
    return d;

 

以上是关于Java 计算经纬度是否在某个范围之内的主要内容,如果未能解决你的问题,请参考以下文章

JAVA代码根据经纬度范围计算WGS84与谷歌全球墨卡托包含的切片数目与拼接图像像素尺寸

C# 计算地图上某个坐标点的到多边形各边的距离

C# 计算地图上某个坐标点的到多边形各边的距离

java判断某个经纬度是不是在矩形内

求出在某个经纬度方圆多少公里返回的最大最小经纬度

做个日期查询,判断开始日期与终止日期范围必须在一个月之内,用java代码