一 点睛

计算两个经纬度的距离的方法这里提供两种。

1 基于 googleMap 中的算法得到两经纬度之间的距离,计算精度与谷歌地图的距离精度差不多。

2 计算中心经纬度与目标经纬度的距离(米)

二 代码

public class LongitudeLatitude {/*** 默认地球半径*/private static double EARTH_RADIUS = 6371000; // 赤道半径(单位m)public static void main(String[] args) {// 西安double lon = 108.93425;  // 当前经度double lat = 34.23053;  // 当前纬度// 北京double lon1 = 116.23128;double lat1 = 40.22077;double dist;double dist2;dist = LongitudeLatitude.GetDistance(lon, lat, lon1, lat1);dist2 = LongitudeLatitude.distance(lon, lat, lon1, lat1);System.out.println("西安到北京的距离:" + dist + " 米");System.out.println("西安到北京的距离:" + dist2 + " 米");}/*** 功能描述:计算两个经纬度的距离** @param lon1 第一点的精度* @param lat1 第一点的纬度* @param lon2 第二点的精度* @param lat2 第二点的纬度* @return 返回的距离,单位m* @author cakin* @date 2021/10/30* @description: 基于googleMap中的算法得到两经纬度之间的距离, 计算精度与谷歌地图的距离精度差不多*/public static double GetDistance(double lon1, double lat1, double lon2, double lat2) {double radLat1 = rad(lat1);double radLat2 = rad(lat2);double a = radLat1 - radLat2;double b = rad(lon1) - rad(lon2);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 s;}/*** 转化为弧度(rad)*/private static double rad(double d) {return d * Math.PI / 180.0;}/*** 计算中心经纬度与目标经纬度的距离(米)** @param centerLon 中心经度* @param centerLat 中心纬度* @param targetLon 需要计算的经度* @param targetLat 需要计算的纬度* @return 米*/private static double distance(double centerLon, double centerLat, double targetLon, double targetLat) {double jl_jd = 102834.74258026089786013677476285; // 每经度单位米;double jl_wd = 111712.69150641055729984301412873; // 每纬度单位米;double b = Math.abs((centerLat - targetLat) * jl_jd);double a = Math.abs((centerLon - targetLon) * jl_wd);return Math.sqrt((a * a + b * b));}
}

三 测试

西安到北京的距离:927275.0 米

西安到北京的距离:1021746.2661746435 米

四 高德地图测试结果

计算两个经纬度的距离相关推荐

  1. php经纬度之间的距离计算公式,golang与php实现计算两个经纬度之间距离的方法

    本文实例讲述了golang与php实现计算两个经纬度之间距离的方法.分享给大家供大家参考,具体如下: golang版本: package main import ( "fmt" & ...

  2. C#计算两个经纬度的距离

    一.C#计算两个经纬度的距离 //地球半径,单位米private const double EARTH_RADIUS = 6378137;/// <summary>/// 计算两点位置的距 ...

  3. 两个坐标的距离C语言,计算两个经纬度直线距离 安卓app开发

    .Net计算方式 public static class CCalculationGPSCoordinateDistance { private const double dEARTH_RADIUS ...

  4. 计算两个经纬度的距离_HTML5 地理定位+地图 API:计算用户到商家的距离

    51CTO官微 | THEFUTURE|技术成就梦想| 最近在做一个类似支付宝口碑商家的功能模块,其中有个功能就是计算出用户与商家的距离,如下图:支付宝口碑商家页面截图思路分析 1.商家选取店铺地址, ...

  5. python 计算两个经纬度的距离_python实现两个经纬度点之间的距离和方位角的方法...

    最近做有关GPS轨迹上有关的东西,花费心思较多,对两个常用的函数总结一下,求距离和求方位角,比较精确,欢迎交流! 1. 求两个经纬点的方位角,P0(latA, lonA), P1(latB, lonB ...

  6. python 计算两个经纬度的距离_python 通过两个点的经纬度计算距离

    谷歌map计算公式: python代码: def haversine(lon1, lat1, lon2, lat2): # 经度1,纬度1,经度2,纬度2 (十进制度数) ""&q ...

  7. c语言输入坐标求距离,计算两个经纬度之间距离的C语言代码

    // // main.c // Distance // // #include #include #define PI 3.1415926 #define EARTH_RADIUS 6378.137 ...

  8. redis也可以根据经纬度查询附近的元素以及计算两个经纬度的距离???

    使用场景 通常地理位置距离排序算法 GeoHash 算法,GeoHash是一种优化的网格算法,能够高效的对经纬度进行比较,也是Redis是所使用的算法.比如,我们的线下教育课拼课的时候需要定位哪几个小 ...

  9. 高德经纬度距离计算php,计算两个经纬度之间的距离 单位(m)

    /** * 计算两个经纬度之间的距离 单位(m) * * @param lat1 * @param lng1 * @param lat2 * @param lng2 * @return */ publ ...

最新文章

  1. 重复制造--REM主数据
  2. 公办低分二本_山东的5所专科院校,属于本省公办,适合低分学生报考
  3. boost::breadth_first_search用法的测试程序
  4. jsch连接mysql_求用jsch网络工具包通过ssh连接远程oracle数据库并发送sql操作语句(数据库在unix上)java代码例子...
  5. 阿里技术大牛最爱的“闲书”,你看过多少?
  6. rabbitmq怎样确认是否已经消费了消息_阿里Java研发二面:了解RabbitMQ?说说RabbitMQ可靠性投递...
  7. 函数的作用域在各浏览器的混乱情况
  8. 艾伟:基于.NET平台的Windows编程实战(四)—— 数据库操作类的编写
  9. python 字符串去重且相同字符最多出现2次_【Python】获取字符串中出现次数最多/少的字符...
  10. 巧用电视卡让笔记本屏幕作PS2游戏显示器
  11. 如果你毕业想进央企, 那就选这些大学, 性价比很高
  12. ffmpeg批量转换ts为mp4
  13. linux的镜像文件有什么用,【iso】iso是什么?iso是什么意思?
  14. Python中的enumerate用法
  15. 通过cocos裁切图片,将大图分为小图
  16. 2023年前端面试题集锦
  17. 播放res/raw文件(MP4)
  18. 池州计算机一级考试试题题库,池州科目一考试题库
  19. 气不气!被迫无奈赚了500W,这程序员真的吊炸天...
  20. C语言循环之空心梯形,循环-空心梯形

热门文章

  1. 后台添加商品和添加到购物车
  2. 【Unity3d学习】粒子光环的制作——粒子编程初体验
  3. UI设计师如何发展 麓言信息
  4. java图片去掉文字_关于java:Java-添加删除PPT文本和图片水印
  5. 来自腾讯的开源跨端开发框架,全民K歌和王者营地都在用
  6. oracle分隔符模糊查询,教您如何实现Oracle模糊查询
  7. python语言关键字是_Python 关键字和标识符
  8. 网页设计与制作:第一章HTML与CSS网页设计概述与第二章HTML入门
  9. 程序员女装史——从入门到穿女装,到底发生了什么?
  10. 汉斯摩根索《国际纵横策论》对现实有什么重要意义,尽可能多写一点