Google映射不一致的路由呈现[Gmapsjs]

时间:2015-12-18 11:36:53

标签: google-maps

我正在使用Gmapsjs在地图上绘制路线。当我尝试仅绘制一条路线时,路线会完全渲染,但是当添加第二条路线时,路线不会完全渲染。请参考下面的图片

http://s15.postimg.org/lc3wmd1bf/Capture.png

在图像中,您可以看到缺少到标记的路径,但有时所有路径都已正确设置,有时并未为所有标记设置路径。这是gmapsjs的问题吗?

每次点击我都会为标记和路径分配新颜色

var color = ['88511c','881c7d','1c8859','1c7788','1c3d88','c92a2a']; 
var colorname = ['brown','pink','green','teal','blue','red'];
var cl = 0;

$(document).on('click','.route',function(){
    initializeMap(routeArray);
});

function initializeMap(route){
if(route.length > 0){
  for(var i=0; i<route.length; i++){
    var next = i + 1;
    map.addMarker({
      lat: route[i].lat,
      lng: route[i].lon,
      infoWindow: {
        content: 'Name: '+route[i].name+' | Pincode: '+route[i].pincode
      },
      icon: 'maps/assets/icons/'+colorname[cl]+'.png'
    });
    if(next < route.length){
      map.drawRoute({
        origin: [route[i].lat, route[i].lon],
        destination: [route[next].lat, route[next].lon],
        travelMode: 'driving',
        strokeColor: '#'+color[cl],
        strokeOpacity: 1,
        strokeWeight: 3
      });
    }
  } // End for
  cl++;
}
map.fitZoom();
}

1 个答案:

答案 0 :(得分:0)

我通过在代码中无所事事来解决问题。点击第一条路线后,我需要至少等待3秒才能点击第二条路线。它完全是关于在地图上渲染的两条路线之间的时间间隔。