已知两点经纬度,求两点间距离(弧形,地球视为规则球体)

已知两点经纬度,求两点间距离(弧形,地球视为规则球体)

正好最近整论文遇到这个问题,发现很多博客没有写明原理,或者有错误的地方,整理于此处,作笔记保存。

注:计算中所有角均为弧度

如图:

在这里插入图片描述

其中:E为点B所在纬线圈的圆心C为与A点纬度相同,与B点经度相同的点;H为A、C所处纬线圈的圆心;连接BC并延长与OH相交与F;

A(Wa,Ja),B(Wb,Jb),其中,W为纬度,J为经度。

欲求A,B间距离(弧形),故要求出在扇形OAB中的∠AOB的弧度,可用 L = 2πR*(∠AOB/2π)=R*∠AOB

即求出∠AOB的度数即可求出距离。

欲求∠AOB的度数,可以在三角形AOB中使用余弦定理或正弦定理计算得:
在这里插入图片描述
三角形OAB为等腰三角形,sin(∠AOB/2) = (AB/2)/R ==> ∠AOB = 2*arcsin(AB / 2R),此处分母为 2R,使用正弦定理

问题转化为求 AB的直线长度:

在三角形ABC中,

AC与BC可以通过经纬度求得:

以经度为例,在以H为圆心的纬度圈上,∠CHA = | Ja - Jb | ,三角形ACH为等腰三角形,可用余弦定理求得AC,求BC同理。

在三角形ABF中有:

在这里插入图片描述
BE与CH可用已知条件求得

在这里插入图片描述

参考博客:

https://blog.csdn.net/weixin_44731100/article/details/89386978

https://blog.csdn.net/xiejm2333/article/details/73297004

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值