对我来说,这看起来像是 DirectionsService 中的错误。
如果我把所有的航点都设为 {stopover:true} 那么它就可以了。
function calcRoute() {
var request = {
origin: "Bad Aussee",
destination: "Rottenmann",
waypoints: [{
location:"Lucern",
stopover:true
},{
location:"Paris",
stopover:true
},{
location:"Madrid",
stopover:true
},{
location:"Granada",
stopover:true
},{
location:"Barcelona",
stopover:true
},{
location:"Monaco",
stopover:true
},{
location:"Rom",
stopover:true
}],
optimizeWaypoints: false,
travelMode: google.maps.DirectionsTravelMode.DRIVING
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(response);
} else {
alert("Directions request failed: "+status);
}
});
}
工作示例 - 中途停留:true
不工作(ZERO_RESULTS) - 中途停留:假,否则与上述相同的请求
示例首先使用 stopover:false (失败)尝试相同的请求,然后使用 stopover:true (成功)
步行路线(中途停留的 UNKNOWN_ERROR:true,中途停留的怪异路径:false)
使用对 DirectionsService 的多个请求的步行路线- 更好,但似乎希望我从摩纳哥游到罗马......