昨天上头交待了一个任务,就是把客户的KML文件上传Google服务,然后覆盖在Google地图中。这可是我从未搞过的东西。一时百思不得其解。上网问度娘,一大堆资料。没想到Goole被墙了,KML文件上传不了,表示各种坑。。。 后来跟老大反映了这一个情况,他说采取坐标连线的方法来解决这个问题。于是,我又是各种度娘。看了很多例子什么的,终于让我找到一个最精简的了。代码如下:
1 //定坐标点连线 2 var locations = new Array( 3 "41.17567036165667,80.30221045782106", "43.85928523812119,87.56906935303743", 4 "43.942358006356756,81.30165297307201", "22.571407340502233,114.14026460623714", 5 "22.67724107546633,114.01971927702428", "22.676050669277778,114.03824292152895", 6 "41.17567036165667,80.30221045782106"); 7 // 线条设置 8 var polyOptions = { 9 strokeColor: '#000000', // 颜色10 strokeOpacity: 1.0, // 透明度11 strokeWeight: 2 // 宽度12 }13 poly = new google.maps.Polyline(polyOptions);14 poly.setMap(this.map); // 装载15 16 /* 循环标出所有坐标 */17 for (var i = 0; i < locations.length; i++) {18 var loc = locations[i].split(',');19 var path = poly.getPath(); //获取线条的坐标20 path.push(new google.maps.LatLng(loc[0], loc[1])); //为线条添加标记坐标 21 }
很简单吧,可就是这个捣鼓我半天。总是提示我setMap没有这个方法,到最后居然又不会了。。 百思不得其解。 估计是浏览器缓存问题,清空了缓存试了下,还真不报错了。。哈哈
本人第一次写博客,思维混乱,希望各位大大提出指正。
新闻热点
疑难解答