1. 程式人生 > >Python3在百度地圖上求兩點座標

Python3在百度地圖上求兩點座標

假設兩個點座標:   

數學公式:

具體程式碼,以及以瀋陽中街地鐵口到東中街地鐵口為例。

import math
def getDistance(longitude1,latitude1,longitude2,latitude2):
    #維度
    lat1 = (math.pi / 180) * latitude1
    lat2 = (math.pi / 180) * latitude2

    #經度
    lng1 = (math.pi / 180) * longitude1
    lng2 = (math.pi / 180) * longitude2

    #地球半徑
    R = 6371

    #兩點間距離 km,如果想要米的話,結果*1000就可以了
    d = math.acos(math.sin(lat1) * math.sin(lat2) + math.cos(lat1) * math.cos(lat2) * math.cos(lng2 - lng1)) * R
    return d * 1000

if __name__ == '__main__':
    #以瀋陽中街到東中街的百度地圖座標拾取為例
    print(getDistance(123.468114,41.807626,123.477634,41.80933))
    #結果為811.4695045550735