程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> 百度地圖經緯度轉換到騰訊地圖/Google 對應的經緯度

百度地圖經緯度轉換到騰訊地圖/Google 對應的經緯度

編輯:PHP綜合

實現目的:將百度地圖經緯度 轉換到 騰訊地圖/Google 對應的經緯度.

方法1:使用代碼進行轉換

存在的問題:轉換之後誤差大,基本不可用

public static void Convert_BD09_To_GCJ02(double lat, double lng) {
      double x_pi = Math. PI * 3000.0 / 180.0;
      double x = lng - 0.0065, y = lat - 0.006;
      double z = Math. sqrt(x * x + y * y) - 0.00002 * Math.sin(y * x_pi);
      double theta = Math.atan2(y, x) - 0.000003 * Math.cos(x * x_pi);
      lng = z * Math. cos(theta );
      lat = z * Math. sin(theta );
      
      System. out.println(lng);
      System. out.println(lat);
}

方法2:

該網站提供轉換服務,坐標較為准確,可用,後台調用沒有仔細研究

http://www.minigps.net/convert.html

方法3:

使用騰訊地圖,詳見1.html

騰訊地圖老版的地址:http://api.map.soso.com/doc_v2/example.html?sample-convertor-library#12map

最新的地址:http://lbs.qq.com/javascript_v2/doc/convertor.html

直接調用的地址<百度地圖轉為騰訊地圖>,points=經緯度,傳入百度的即可:

     http://apic.map.qq.com/translate/?type=3&points=114.041993,22.667204&output=jsonp&pf=jsapi&cb=qq.maps.__svcbi1x9al56.cbi1x9al9l0

坐標查詢地址:

    http://api.map.baidu.com/lbsapi/getpoint/
     http://lbs.qq.com/javascript_v2/case-run.html#sample-geocoding-reverse  

總結:

     由於騰訊的經緯度和google經緯度是同一個坐標系,百度經緯度為自己的體系,目前網上搜索到的算法代碼,都不是十分精確,所以建議使用地圖開發方提供的Api進行轉換.

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved