两个经纬度之间距离和角度的计算

两个经纬度之间距离和角度的计算

(alt,lon)为地球上某一点的纬度和经度。

方法一

1、将经纬度转换为三维地球坐标系坐标

球心与赤道上0经度点的连线为X轴,球心与赤道上东经90度点的连线为Y轴,球心与北极点的连线为Z轴。

%% R为地球半径,约为6400km
x = R*cos(alt)*cos(lon);
y = R*cos(alt)*sin(lon);
z = R*sin(alt);

2、计算两点之间的直线距离(弦长)

L =((x1-x2)^2 + (x1-x2)^2 + (x1-x2)^2 )^0.5

3、计算两点之间的弧长

根据弦长计算弧长

计算两点之间的角度
θ = 2 * arcsin(0.5L/R)

1度=π/180弧度

 S = R * pi * 2[arcsin(0.5L/R)] /180

方法二

利用MATLAB中的distance函数,计算两个点之间的角度

tx = txsite('Name','MathWorks','Latitude',lat1,'Longitude',lon1);
rx = rxsite('Name','Fenway Park','Latitude',lat2,'Longitude',lon2);
distance_1 = distance(tx,rx,'geodesic')/1000;%km为单位

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值