偏移谷歌地图DirectionsService折线

时间:2012-08-03 17:38:13

标签: google-maps-api-3

我在谷歌地图api v3路线服务上绘制了两条折线。

我的问题是,它们在地图的一部分上重叠,其中一个覆盖其他地图。我希望总共划出6条线路,这是我所在城市的公交线路。所有路线都回到了城市的同一区域,但很难区分它们。

有没有办法稍微抵消每一条线?

function busRoute2(source,destination){
        // show route between the points
        directionsService = new google.maps.DirectionsService();
        directionsDisplay = new google.maps.DirectionsRenderer(
        {
            suppressMarkers: true,
            suppressInfoWindows: true,
            polylineOptions: { strokeColor: '#000000', strokeOpacity: 0.5 } 
        });
        directionsDisplay.setMap(map);
        var request = {
            origin:source, 
            destination:destination,
            travelMode: google.maps.DirectionsTravelMode.DRIVING
        };
        directionsService.route(request, function(response, status) 
        {
            if (status == google.maps.DirectionsStatus.OK) 
            {
                directionsDisplay.setDirections(response);

            }
        });

}

2 个答案:

答案 0 :(得分:0)

继承工作代码(非常基本)polyLine offset map animated注意:图标'offset'属性是图标沿线的偏移百分比。 您需要操纵图标的相对“路径”坐标(SVG格式)(在您的情况下是一条线)本身,以便将其偏离线

答案 1 :(得分:0)

忘记我的建议。我试图创建一个重复图标(2像素点),每隔4个像素偏离polyLine重复一次。它看起来非常恶心,并且滞后于浏览器。

我将不得不创建一个函数,根据角度dLat,dLng和缩放比例在加载时编辑折线的坐标。

您希望您的标记(停靠点,公共汽车)和线路位于道路的一侧,朝向一个方向,而另一侧则返回。你也不想在地图上模糊道路名称

如果有人想帮助我,请发送电子邮件至huntington@beachincalifornia.com