经纬度计算距离_经纬度计算,别让数学拖你后腿

已知一个的经度/纬度(long1, lat1),距离d(以KM为单位)和方位角α(以度为单位),求新的经度/纬度(long2, lat2)。

753eeb9539ebccb8751bdce71fc3c513.png

图1

这个问题在大地测量学中非常受欢迎。

举个例子:点A(123.2329 , 32.5946 ),求北偏东45度方向,200千米处的点B(long2, lat2)经纬度。


在计算之前,首先要了解这几点

1)地球不是一个标准的球体,它是一个两极稍扁赤道略鼓的不规则球体。简单来说,它更接近是一个椭圆。

2)由于(1),地球是没有恒定的半径,为了方便计算,我们这里取平均距离,平均半径 为6371.393千米,记为ARC

3)上面的平均半径ARC是指球体半径,你可以简单理解为赤道圆半径,纬度0度的那个切面的半径。在一个球体里面,离球心越远,切面的半径就越少。纬度就是一个以赤道平面为起点的线面角。知道球体半径ARC,和线面角lat1(当前纬度),就可以求出切面的半径了。则当前的纬度的切面半径arc = ARC*cos(lat1)

5a88f3debf9a2b80c970231f6661e43b.png

图2

4)经纬度平移的角度计算。

在一个圆里面,角度β: 弦比周长再乘360

02758fa4f0f4bc1af996ab0bbb49c91c.png

图3

事实上,经度方向上,与纬度方向上的半径r,与弦长是不一样的。

结合图1,图2可以知道:

纬度:L=d*sinα,r=2π*ARC*cos(lat1) 半径是当前纬度切面的半径

经度:L=d*cosαr=2π*ARC 半径是纵向切面的半径,这里取平均半径

纬度β:d*sinα/[ARC*cos(lat1)*2π/360]

经度β:d*cosα/ (ARC *2π/360)

平移的角度加上原来的经纬度就得到新的经纬度了,最好就得到最终公式了

long2 =d*sinα/[ARC*cos(lat1)*2π/360]+ long1
lat2 = d*cosα/ (ARC *2π/360)+lat1


说了这么多数学知识,你懂了多少?

不懂也没有关系,回到Excel,其实就是设置函数公式的问题。

整理已知的条件如下。

起点经度(以度为单位)Long1 123.2329

起点的纬度(以度为单位)lat1 32.5946

方位角(以度为单位)α 45

距率(以KM为单位)d 200

平均半径(以KM为单位)ARC 6371.393 (隐藏的条件)

把条件代入公式就可以得到结果。

511a4795a3424e29246f8349f1ab89cc.png

图4

需要注意的是:

1)sinα中的α要转换为弧度,这里用了RADIANS(角度) 来转换

2)π 直接用 Pi() 来表示

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值