分享的山 換個地圖打開成了海

Android開發中,偶然發現,用百度地圖分享出來的經緯度信息,再次用高德地圖、騰訊地圖打開,會出現幾百米甚至幾公里的偏移。借用網絡相關評論 分享出來的明明是山,換個地圖打開變成海了

一、現象

打開百度地圖:在地圖上選擇一個地點,查看其經緯度坐標。
這裡以我的老東家 網易北京研發中心為例。
打開百度地圖坐標拾取系統,搜索框輸入 網易北京研發中心,獲取經緯度坐標為:116.282314,40.049229

百度地圖:網易北京研發中心在百度地圖上的經緯度

打開高德地圖,高德地圖逆地理編碼系統。
百度地圖坐標拾取的經緯度信息填入高德地圖逆地理編碼系統中,如下圖所示,可以看到定位地址大約出現了一公里的偏移

高德地圖:百度地圖坐標拾取的經緯度信息 填入 高德地圖逆地理編碼系統

打開騰訊地圖,騰訊位置服務系統。
百度地圖坐標拾取的經緯度信息填入騰訊位置服務系統中,如下圖所示,可以看到定位地址同樣出現了大約一公里的偏移,但騰訊地圖、高德地圖最終的定位位置保持一致

騰訊地圖:百度地圖坐標拾取的經緯度信息 填入 騰訊位置服務系統

高德地圖坐標拾取器
//lbs.amap.com/demo/javascript-api/example/geocoder/regeocoding

百度地圖坐標拾取器
//api.map.baidu.com/lbsapi/getpoint/index.html

騰訊地圖坐標拾取器
//lbs.qq.com/getPoint/

猜想:

現象:
百度地圖分享出來的經緯度信息,用高德地圖、騰訊地圖打開出現了相同的偏移量;但高德地圖、騰訊地圖分享出來的經緯度信息,兩者之前可以互相使用。

這裡猜測:
高德、騰訊地圖應該使用了同一套坐標系統;百度地圖可能在該地圖的基礎上,使用了一套新的坐標系統,對坐標系主動進行了某種偏移操作。

二、坐標系

分別查詢高德地圖、騰訊地圖、百度地圖三家的開發者平台,發現:
高德地圖、騰訊地圖採用的是 GCJ02 坐標系百度地圖採用了 BD09 坐標系

那麼 GCJ02、BD09 坐標系有什麼區別?

想要了解 GCJ02、BD09 坐標系的區別,先了解一下國內主流的坐標系類型。
目前國內主流的坐標系類型有 WGS84、GCJ02、BD09

  • WGS84
    世界大地測量系統(World Geodetic System 1984)是一種用於地圖學、大地測量學和導航(GPS全球定位系統)的大地測量系統標準。
  • GCJ02
    中國國家測量局02號標準(Guojia Cehui Ju 02),也稱為火星坐標系。是中國國家測繪局制訂的地理信息系統的坐標系統,是在 WGS84 經緯度的基礎上執行加密算法而成。因GPS得到的經緯度直接在 GCJ02 坐標系下會定位到錯誤的地點,有種到了火星的感覺,因此在坊間也將 GCJ02 戲稱為火星坐標系
  • BD09
    百度坐標系,百度在GCJ02坐標系基礎上再次加密而成

國內主流地圖默認採用的坐標系?

了解了各坐標系的大概定義,那麼目前國內主流的地圖都默認採用了什麼坐標系統呢?

地圖 大陸、港澳 台灣省 海外
百度 BD-09 WGS84 WGS84
高德 GCJ-02 WGS84 WGS84
騰訊 GCJ-02 WGS84 WGS84

總結一句話:

中國大陸、港澳,使用GCJ02坐標系(百度除外,百度默認使用 BD09 坐標系);中國台灣省使用 WGS84 坐標系;海外地區使用 BD09 坐標系

以上表格數據依據:

百度地圖數據依據
//lbsyun.baidu.com/index.php?title=androidsdk/guide/coordtrans

百度地圖數據依據

高德地圖數據依據
//lbs.amap.com/faq/advisory/others/39840/?wd=WGS84&cateId=&page=&detail=true

高德地圖數據依據

高德地圖數據依據

騰訊地圖數據依據
//lbs.qq.com/mobile/androidMapSDK/developerGuide/attention

騰訊地圖數據依據

騰訊地圖數據依據

三、坐標系轉換

查看百度、高德、騰訊相關開發者平台,發現對應開發者平台均提供了GCJ02、BD09、WGS84相關的坐標系轉化API。

百度地圖

百度地圖 坐標轉化API:
//lbsyun.baidu.com/index.php?title=androidsdk/guide/coordtrans

百度地圖 坐標轉化API

高德地圖

高德地圖 坐標轉化API:
//lbs.amap.com/api/android-sdk/guide/computing-equipment/coordinate-transformation/

高德地圖 坐標轉化API

=== THE END ===

歡迎關注我的公眾號