如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)
来源:互联网 发布:人工智能研究的难点 编辑:程序博客网 时间:2024/05/15 07:10
看标题就会明白,两个经纬度之间真实距离这个一般的地图API有自带方法,直接调用便可得到结果,一般结果都是以米为单位。最近在做android版上的GoogleMap,找了半天API发现没有此类方法,看来只能自己实现了,接下来我就把如何计算两点之间(经纬度)的真实距离的算法写下来,原则上在各种地图版本上都通用,方便大家使用。
Google Map API:https://developers.google.com/maps/documentation/android/
【本文适用于android,ios等各种平台下的地图经纬度测距】
自己实现距离算法:
/** * 计算两点之间距离 * @param start * @param end * @return 米 */public double getDistance(LatLng start,LatLng end){double lat1 = (Math.PI/180)*start.latitude;double lat2 = (Math.PI/180)*end.latitude;double lon1 = (Math.PI/180)*start.longitude;double lon2 = (Math.PI/180)*end.longitude;// double Lat1r = (Math.PI/180)*(gp1.getLatitudeE6()/1E6);// double Lat2r = (Math.PI/180)*(gp2.getLatitudeE6()/1E6);// double Lon1r = (Math.PI/180)*(gp1.getLongitudeE6()/1E6);// double Lon2r = (Math.PI/180)*(gp2.getLongitudeE6()/1E6);//地球半径double R = 6371;//两点间距离 km,如果想要米的话,结果*1000就可以了double d = Math.acos(Math.sin(lat1)*Math.sin(lat2)+Math.cos(lat1)*Math.cos(lat2)*Math.cos(lon2-lon1))*R;return d*1000;}
举例:(我使用的百度地图的经纬度数据)
LatLng start = new LatLng(39.95676, 116.401394);LatLng end = new LatLng(36.63014,114.499574);getDistance(start, end);
log日志结果为:402.21321(km)
害怕不准确的话,可以打开百度地图首页,使用测距工具:
看图应该知道,应该没什么问题吧。
- 如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)
- 如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)
- 如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)
- 如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)
- 如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)
- 如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)
- 根据经纬度获取两点之间的距离(php&mysql)
- 地图-获取两点之间的距离(经纬度)
- php获取两点经纬度之间的距离
- 两点之间(经纬度)的距离计算
- iOS百度地图根据经纬度获取两点之间的距离
- 计算经纬度两点之间的距离(c#)
- 计算经纬度两点之间的距离(/m)
- 根据经纬度计算两点之间的距离
- 根据经纬度计算两点之间的距离
- 根据经纬度测算两点之间的距离
- php 根据经纬度计算两点之间距离
- 姚博文 经纬度两点之间距离计算
- java基础_hashmap,hashtable,hashset
- C语言笔记(网络)
- 于RHEL6中ulimit的nproc限制,RHEL6和RHEL5还是有一些细节上的区别
- WinCE中RTC驱动开发介绍
- 在硬盘留下后门,重装系统都没辙
- 如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)
- 关于建表和给表建SE16和SM30的t-code
- 数据库解析
- C笔记(系统编程)
- Approaching the America Accent
- C语言浮点数解惑
- 关于solr
- JS中数组Array的用法
- 前往传奇的口岸城市满洲里