百度經緯度座標轉換官方方法

百度經緯度座標轉換官方方法

百度座標轉換官方文檔

國內主流座標系類型:

主要有以下三種

  1. WGS84:爲一種大地座標系,也是目前廣泛使用的GPS全球衛星定位系統使用的座標系;

  2. GCJ02:是由中國國家測繪局制訂的地理信息系統的座標系統,是由WGS84座標系經加密後的座標系;又稱火星座標系

  3. BD09:百度座標系,在GCJ02座標系基礎上再次加密。其中BD09ll表示百度經緯度座標,BD09mc表示百度墨卡托米制座標。

百度地圖SDK在國內(包括港澳臺)使用的是BD09座標(定位SDK默認使用GCJ02座標);在海外地區,統一使用WGS84座標。開發者在使用百度地圖相關服務時,請注意選擇。

通用座標轉換方法(座標之間互轉)

1. GPS座標轉換成百度經緯度座標

    /**
     * 將GPS設備採集的原始GPS座標轉換成百度經緯度座標
     * 即GPS座標轉換爲BD09LL座標
     * @param sourceLatLng
     * @return
     */
    public static LatLng GPStoBD09LL(LatLng sourceLatLng) {
        CoordinateConverter converter  = new CoordinateConverter();
        converter.from(CoordType.GPS);
        converter.coord(sourceLatLng);
        return converter.convert();
    }

2. 火星座標系座標轉換成百度經緯度座標

    /**
     * 將火星座標系座標轉換成百度經緯度座標
     * 即GCJ02座標轉換爲BD09LL座標
     * @param sourceLatLng
     * @return
     */
    public static LatLng GCJ02toBD09LL(LatLng sourceLatLng) {
        CoordinateConverter converter  = new CoordinateConverter();
        converter.from(CoordType.COMMON);
        converter.coord(sourceLatLng);
        return converter.convert();
    }

3. 百度墨卡托米制座標系座標轉換成百度經緯度座標

    /**
     * 將百度墨卡托米制座標系座標轉換成百度經緯度座標
     * 即BD09MC轉換成BD09LL
     *
     * @param sourceLatLng
     * @return
     */
    public static LatLng BD09MCtoBD09LL(LatLng sourceLatLng) {
        CoordinateConverter converter = new CoordinateConverter();
        converter.from(CoordType.BD09MC);
        converter.coord(sourceLatLng);
        return converter.convert();
    }

注意:

在使用百度地圖開發的時候,需要確保定位返回的座標類型和地圖使用的座標類型保持一致。

完整代碼及demo路徑

我的博客文章

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章