如何調(diào)用百度地圖API實(shí)現(xiàn)坐標(biāo)轉(zhuǎn)換

這篇文章主要介紹了如何調(diào)用百度地圖API實(shí)現(xiàn)坐標(biāo)轉(zhuǎn)換,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括通榆網(wǎng)站建設(shè)、通榆網(wǎng)站制作、通榆網(wǎng)頁制作以及通榆網(wǎng)絡(luò)營(yíng)銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,通榆網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到通榆省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

 Python代碼

因?yàn)椴煌牡貓D使用的經(jīng)緯度坐標(biāo)系不同(如百度地圖使用的是百度坐標(biāo),高德、谷歌等使用的是GCJ-02坐標(biāo)),所以在實(shí)際應(yīng)用中需要進(jìn)行不同坐標(biāo)的轉(zhuǎn)化,不然將百度經(jīng)緯度的點(diǎn)畫在高德地圖上,會(huì)出現(xiàn)位置偏移。

實(shí)現(xiàn)百度坐標(biāo)向高德坐標(biāo)轉(zhuǎn)化有兩種方法,一種就像調(diào)用百度地圖API一樣,調(diào)用高德API接口實(shí)現(xiàn)坐標(biāo)變換,另一種可以直接通過計(jì)算實(shí)現(xiàn)轉(zhuǎn)化。

  • 調(diào)用高德API接口

高德開放平臺(tái)為https://lbs.amap.com/api/webservice/summary,與調(diào)用百度API一樣,用戶要先申請(qǐng)自己的ak并作為必填參數(shù)進(jìn)行傳入才能完成調(diào)用。
#通過web api 將百度經(jīng)緯度轉(zhuǎn)換為高德經(jīng)緯度def getGCJ02(lng,lat):    url = 'https://restapi.amap.com/v3/assistant/coordinate/convert?coordsys=baidu&output=json&key='    ak = '你的ak'    #生成完整url    uri = url +  ak + '&locations=' + str(lng) + ',' + str(lat)    html = requests.get(uri)#獲取網(wǎng)頁內(nèi)容    bs_getDetail = BeautifulSoup(html.text,'lxml')  #解析網(wǎng)頁      #找到存放經(jīng)緯度數(shù)據(jù)的文字,轉(zhuǎn)換為字典,取得相應(yīng)經(jīng)緯度    location = eval(bs_getDetail.p.text)["locations"]    return location
  • 直接計(jì)算

也可以通過直接計(jì)算得到相關(guān)結(jié)果,這里注意要提前加載math庫。

#通過計(jì)算將百度經(jīng)緯度轉(zhuǎn)換為高德經(jīng)緯度def getGCJ02_2(lng, lat):    PI = math.pi  * 3000.0 / 180.0;    x = lng - 0.0065;    y = lat - 0.006;    z = math.sqrt(x * x + y * y) - 0.00002 * math.sin(y * PI);    theta = math.atan2(y, x) - 0.000003 * math.cos(x * PI);    gg_lng = z * math.cos(theta);    gg_lat = z * math.sin(theta);    return str(list([gg_lng, gg_lat]))
最終的結(jié)果如下,前面為百度經(jīng)緯度坐標(biāo),后面為轉(zhuǎn)換后的高德經(jīng)緯度坐標(biāo):
[120.30092835093511, 30.429908332211145]->[120.2943448753952, 30.424254963690057]

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“如何調(diào)用百度地圖API實(shí)現(xiàn)坐標(biāo)轉(zhuǎn)換”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!

網(wǎng)站欄目:如何調(diào)用百度地圖API實(shí)現(xiàn)坐標(biāo)轉(zhuǎn)換
轉(zhuǎn)載注明:http://muchs.cn/article14/joppde.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、關(guān)鍵詞優(yōu)化全網(wǎng)營(yíng)銷推廣、服務(wù)器托管、品牌網(wǎng)站制作、定制開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司