GWS-84坐标/google坐标批量转百度坐标
$.getJSON('map/js/thgps.json',data=>{ var ddaa = data; var dataa = ddaa.geometries[0].coordinates[0]; var map = new BMapGL.Map("container"); var point = new BMapGL.Point(114.19372379774158,23.007445935362906); map.centerAndZoom(point, 15); map.enableScrollWheelZoom(true);//开启鼠标滚动缩放 map.addControl(new BMapGL.ScaleControl());//开启比例尺,默认左下角 var convertor = new BMapGL.Convertor(); //定义 var m_rep=0;//回调重复次数 var m_repp=0; var pointArr_convert = []; var points = []; var ggPoint; for (let i = 0;i<dataa.length;i++){ ggPoint = new BMapGL.Point(dataa[i][0],dataa[i][1]); points.push(ggPoint); } var bd = []; translateCallback = function (data){ //回调函数 if(data.status === 0) { bd.push(data.points[0]); m_rep++;//回调次数记录 if(m_rep<points.length) //判断全部转换是否完成 { pointArr_convert.length = 0; //pointArr_convert数组清零 pointArr_convert.push(points[m_rep]); //将要转换的GPS数据push到pointArr_convert数组 convertor.translate(pointArr_convert,3,5,translateCallback); //在回调函数中进行下一组转换的提交 }else { // console.log(bd);//直接打印bd数组会出现打印丢失的问题 console.log(JSON.stringify(bd));//将bd数组转化为json数据格式,再打印就会完全了 var polygon = new BMapGL.Polygon(bd, {strokeColor:"blue", strokeWeight:2, strokeOpacity:0.5}); map.addOverlay(polygon); m_repp++; if (m_repp<ddaa.geometries.length){ bd.length=0; points.length=0; pointArr_convert.length=0; m_rep=0; dataa = ddaa.geometries[m_repp].coordinates[0]; for ( i = 0;i<dataa.length;i++){ ggPoint = new BMapGL.Point(dataa[i][0],dataa[i][1]); points.push(ggPoint); } pointArr_convert.push(points[0]); convertor.translate(pointArr_convert,3,5,translateCallback); } } } }; pointArr_convert.push(points[0]); convertor.translate(pointArr_convert,3,5,translateCallback); });