微信原始坐标转换成百度坐标 lat lng

时间:2022-03-14 21:14:31

如有帮到你记得结合我这篇博客里的方法。。。。

http://www.cnblogs.com/zc290987034/p/8294988.html

{:wx_jssdk_config("false")}  //最主要的这一句 没有这一句在微信浏览器里是无法调用的定位功能的
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=你的密钥"></script><!--百度地图-->
<script>
wx.ready(function(){
wx.getLocation({
type: 'wgs84', // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02'
success: function (res) {
var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90
var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。
var data_1 = {
"lat":latitude,
"lng": longitude,
};
/*坐标转换*/
// 百度地图API功能
//GPS坐标
var x = longitude;
var y = latitude;
var ggPoint = new BMap.Point(x,y); //地图初始化
var bm = new BMap.Map("allmap");
bm.centerAndZoom(ggPoint, 15);
bm.addControl(new BMap.NavigationControl());
//添加gps marker和label
var markergg = new BMap.Marker(ggPoint);
bm.addOverlay(markergg); //添加GPS marker
var labelgg = new BMap.Label("未转换的GPS坐标(错误)",{offset:new BMap.Size(20,-10)});
markergg.setLabel(labelgg); //添加GPS label //坐标转换完之后的回调函数
translateCallback = function (data){
if(data.status === 0) {
var marker = new BMap.Marker(data.points[0]);
bm.addOverlay(marker);
var label = new BMap.Label("转换后的百度坐标(正确)",{offset:new BMap.Size(20,-10)});
marker.setLabel(label); //添加百度label
bm.setCenter(data.points[0]);
var arr = data.points[0];//转换后的lat lng
              //ajax抛到指定的接口
$.ajax({
url:'{:U("Index/lat_lng_add")}',
type: "POST",
data: arr,
success: function (data) {}
});
}
} setTimeout(function(){
var convertor = new BMap.Convertor();
var pointArr = [];
pointArr.push(ggPoint);
convertor.translate(pointArr, 1, 5, translateCallback)
}, 1000); }
})
}); </script>