微信座標轉換百度座標(百度地圖JavaScript API和百度web服務API)
阿新 • • 發佈:2019-01-11
一、介紹
本文介紹了微信座標轉換成百度座標的2種方式及程式碼例項
- 百度地圖JavaScript API
- 百度web服務API
二、注意
百度地圖JavaScript API:只可以轉換成百度座標。百度座標轉換中文地址
百度web服務API:轉換成百度座標,還可以返回中文地址
三、使用“百度地圖JavaScript API”把微信座標轉成百度座標
百度API官網地址:http://lbsyun.baidu.com/index.php?title=jspopular
步驟1:頁面引用js
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=你的瀏覽器祕鑰"></script>
步驟2:js中進行轉換
// 微信座標轉換成百度座標 var longitude = "116.40718"; // 微信經度 var latitude = "39.978207"; // 微信緯度 var lng = ''; //百度經度 var lat = ''; //百度緯度 var convertor = new BMap.Convertor(); var ggPoint = new BMap.Point(longitude, latitude); var pointArr = []; pointArr.push(ggPoint); convertor.translate(pointArr, 1, 5, function (data){ console.log("百度data"+data); if(data.status === 0) { lng = data.points[0].lng; lat = data.points[0].lat; console.log("百度經度:"+lng); console.log("百度緯度:"+lat); } });
瀏覽器控制檯打印出結果,轉換完成。
四、使用“百度web服務API”把為微信座標轉成百度座標
百度API官網地址:http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-geocoding-abroad
步驟1:js中進行轉換
由於我的微信是使用的“wgs84”座標系,所以我在url拼接了coordtype引數
// 微信座標轉換成百度座標 var longitude = "116.40718"; // 微信經度 var latitude = "39.978207"; // 微信緯度 var url = "http://api.map.baidu.com/geocoder/v2/?callback=renderReverse&location="+latitude+","+longitude+"&output=json&pois=0&ak=你的服務端祕鑰ak&coordtype=wgs84ll"; jQuery.ajax({ url: url, type: "GET", dataType: "jsonp", //指定伺服器返回的資料型別 success: function (data) { if(data.status!='0'){ alert('解析地理位置錯誤'); } //經度 var lng = data.result.location.lng; //緯度 var lat = data.result.location.lat; //地址引數 var ad = data.result.addressComponent; var fullAddress; if(ad.streetNumber == '' || ad.streetNumber == null){ console.log(ad); //無街道門牌號碼,顯示社群資訊 fullAddress= ad.province + ad.city + ad.district + ad.town + ad.street; }else{ fullAddress= formatted_address; } console.log("百度經度:"+lng); console.log("百度緯度:"+lat); console.log("百度地址:"+fullAddress); } });
瀏覽器控制檯打印出結果,轉換完成。