python_已知目前经纬度、角度、距离求目标点经纬度

该博客介绍了一个Python函数,用于根据起始点的经纬度、角度和距离,计算目标点的经纬度。函数首先将输入的角度转换为弧度,然后应用几何公式计算目标点的纬度和经度。注意,这个计算基于地球是标准球的假设,因此结果可能存在一定的误差。最后,函数还包含了一个角度修正部分,以确保结果在正确的象限内。
摘要由CSDN通过智能技术生成

def p(longitude,latitude,angle,distance): 

    ang=angle/180*PI #角BAC

    lon0=longitude/180*PI

    lat0=latitude/180*PI

    nAB=distance/R     #AB对应圆心角

    ab=R*m.sin(nAB/2)*2    

    ac=ab*m.cos(ang)

    bc=ab*m.sin(ang)

    nAC=m.asin(ac/R)*2  #圆心角

    nBC=m.asin(bc/R)*2 

    lat1=lat0+nAC

    r=R*m.cos(lat1)        #纬度圈半径

    nbc=m.asin(bc/(2*r))*2 #纬度圈经度偏移量

    longitude1=longitude+nbc*180/PI

    latitude1=lat1*180/PI

    #------角度修正

    

    if(angle>=0 and angle<=90):

        latitude=latitude

    elif(angle>=90 and angle<=180):

        latitude1-=2*(latitude1-latitude)

    elif(angle>=180 and angle<=270):

        longitude1-=2*(longitude1-longitude)

        latitude1-=2*(lat

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

C4499

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值