计算航向角和经纬度之间的距离
#define PI 3.14159265358979323846
#define EARTH_RADIUS_L 6378137
#define EARTH_RADIUS_S 6356752.3142
/*//角度转弧度*/
static double rad(double d)
{
return d * PI / 180.0;
}
/*//弧度转角度*/
static double deg(double x)
{
return x * 180 / PI;
}
/*//获取两点之间距离*/
double getDistance(double lat1, double lng1, double lat2, double lng2)
{
double radLat1 = rad(lat1);
double radLat2 = rad(lat2);
double a = radLat1 - radLat2;
double b = rad(lng1) - rad(lng2);
double s = 2 * asin(sqrt(pow(sin(a/2),2) +
cos(radLat1)*cos(radLat2)*pow(sin(b/2),2)));
s = s * EARTH_RADIUS_L;
return s;
}
/*//计算航向角*/
double CalculateHeading(double plng1, double plat1, double plng2, double plat2)
{
double y = sin(plng2-plng1)*cos(plat2);
double x = cos(plat1)*sin(plat2) - sin(plat1)*cos(plat2)*cos(plng2-plng1);
double heading = atan2(y,x);
heading = deg(heading);/*//转化为角度*/
if (heading < 0)
{
heading = heading + 360;
}
return heading;
}
计算航向角和经纬度之间的距离相关推荐
- php两个经纬度之间距离,如何使用php计算出两个经纬度之间的距离
通过使用php来计算两个经纬度之间的距离. /* * 计算出两个经纬度之间的距离(单位:米) * */public function getdistanceAction() { $lng1=117.2 ...
- java gps 距离计算_java计算两个GPS经纬度之间的距离(转)
/** * Created by yuliang on 2015/3/20. */ public class LocationUtils { private static double EARTH_R ...
- 计算经纬度之间的距离
给你两个经纬度,计算他们之间的距离 这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的 假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两 ...
- 高德经纬度距离计算php,计算两个经纬度之间的距离 单位(m)
/** * 计算两个经纬度之间的距离 单位(m) * * @param lat1 * @param lng1 * @param lat2 * @param lng2 * @return */ publ ...
- mysql 下 计算 两点 经纬度 之间的距离 含具体sql语句
mysql取字段逗号分隔的第一个 cover字段为:(admin/LUpiEMD1Pk6U6B,admin/LUpiEMD1Pk6U6B,admin/LUpiEMD1Pk6U6B) 取逗号分隔第一个词 ...
- hive 计算两个经纬度之间的距离
select 6378137*2*ASIN(SQRT(POWER(SIN((lat1-lat2)*ACOS(-1)/360),2) + COS(lat1*ACOS(-1)/180)*COS(lat2* ...
- php经纬度之间的距离计算公式,php计算两个经纬度地点之间距离的方法分享
用php计算两个指定的经纬度地点之间的距离,代码: /** *求两个已知经纬度之间的距离,单位为米 *@param lng1,lng2 经度 *@param lat1,lat2 纬度 *@return ...
- 怎么计算两个经纬度之间的距离
1. 用经纬度大致计算距离地球赤道上环绕地球一周走一圈共 40075.04公里 而一圈分成360° 而每1°(度)有60' 每一度一秒在赤道上的长度计算如下: 40075.04km/360°=111. ...
- c#语言+计算两个位置的距离,C#计算两个经纬度之间的距离
最近在项目中有一个功能需要计算两个经纬度之间的距离,在网上找了很多,也试了很多,下面的计算方法得出的结果是精度是最高,希望对大家有所帮助. private const double EARTH_RAD ...
最新文章
- 【 MATLAB 】Matlab 帮助文档需要登录问题如何解决?
- Perl通过WIN32 OLE来操作EXCEL
- html与css知识总结,html和css知识总结(示例代码)
- stackless python初体验
- 页面的主题标记--body
- php废物,PHP的垃圾回收机制以及大概实现
- sql SELECT时的with(nolock)选项说明
- Instgram和color,谁会更成功?
- 2022年6月TIOBE编程语言排名:Python、C、Java
- 职业学校计算机教学,职业学校计算机专业教学初探
- ssm毕设项目自来水收费管理系统7yd5p(java+VUE+Mybatis+Maven+Mysql+sprnig)
- Oracle RAC详解
- Java教练和运动员,乒乓球和篮球出国打比赛,需要学英语
- 33-Figma-数据采集器使用方式-后裔采集器
- scrapy的spider中为什么使用yield
- 【Vue知识点】——Vue2和Vue3的数据劫持
- 搭便车的时候,请别把车砸了。
- 谷歌Android 9 Pie介绍及新功能
- Yapi测试插件--cross-request
- MATLABGPU渲染曲线
热门文章
- modbus协议与nodejs modbus-serial实现
- 实用插件(三)通讯录插件
- Git 读书笔记(一)
- MOOC网TensoroFlow入门实操课程7——TensoroFlow Lite的Android部署
- PDF文件怎么转PPT的操作方法
- 金融风控实战——额度模型与风控策略
- 华南农业大学c语言程序设计实验指导书参考答案,华南农业大学C语言程序设计实验指导书参考答案.doc...
- Fiora:漏洞PoC框架的图形版,快捷搜索PoC、一键运行Nuclei
- word中允许西文在单词中间换行
- yum安装本地rpm包