Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/420.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何向Google Directions路线添加更多路线点?_Javascript_Google Maps Api 3 - Fatal编程技术网

Javascript 如何向Google Directions路线添加更多路线点?

Javascript 如何向Google Directions路线添加更多路线点?,javascript,google-maps-api-3,Javascript,Google Maps Api 3,我正在使用谷歌方向API。用户在地图上标记起点和终点。你能告诉我如何在路线上添加更多的路线点吗?现在我只能添加两个标记:起点和终点。我想知道我应该如何定义是否要添加4、5或更多的布线点? 这是我的代码: function addRoute(event) { if(markers.length < 50){ var marker = new google.maps.Marker({ position: event.lat

我正在使用谷歌方向API。用户在地图上标记起点和终点。你能告诉我如何在路线上添加更多的路线点吗?现在我只能添加两个标记:起点和终点。我想知道我应该如何定义是否要添加4、5或更多的布线点? 这是我的代码:

function addRoute(event) {
        if(markers.length < 50){
            var marker = new google.maps.Marker({
                position: event.latLng,
                map: map,
                draggable: true
            });
            markers.push(marker);
        }

        if(markers.length == 2){
            var start = markers[0].getPosition();
            var end = markers[1].getPosition();

            putDirections(start, end);

            $(markers).each(function(i, marker){
                google.maps.event.addListener(marker, 'dragend', function(){
                    clearDirections();
                    var start = markers[0].getPosition();
                    var end = markers[1].getPosition();
                    putDirections(start, end);
                });
            });
        }
    }
函数addRoute(事件){
如果(长度<50){
var marker=new google.maps.marker({
位置:event.latLng,
地图:地图,
德拉格布尔:是的
});
标记器。推(标记器);
}
如果(markers.length==2){
var start=markers[0]。getPosition();
var end=标记[1]。getPosition();
指示(开始、结束);
$(标记)。每个(功能(i,标记){
google.maps.event.addListener(标记'dragend',function(){
clearDirections();
var start=markers[0]。getPosition();
var end=标记[1]。getPosition();
指示(开始、结束);
});
});
}
}

您还可以添加优化航路点:如果您希望google计算航路点的顺序以使路线最短,则为true。

您是否在询问如何添加到DirectionRequest?用户单击地图,会显示类似起始点的标记,用户再次单击,B标记显示,用户再次单击,C标记显示。所以路线是从A到B,从B到C自动计算的。可能吗?
directionsService.route({waypoints: waypts, /*other options*/});