0

我正在尝试使用其所有地理点重新创建我保存在数据库中的路线,并且我正在尝试使用 Rederer 的方向来执行此操作

function addOldRoute(){
    var waypts =[];
    for ( var int = 0; int < elems.length; int++) {
        if(int !=0 && int!=elems.lenght-1){
            waypts.push(getWaypoint(elems[int]));
        }
    }

       var request = {
              origin: new google.maps.LatLng(elems[0].latLng.lat(),elems[0].latLng.lng()),
              destination: new google.maps.LatLng(elems[elems.length-1].latLng.lat(),elems[elems.length-1].latLng.lng()),
              waypoints: waypts,
              optimizeWaypoints: true,
              travelMode: google.maps.TravelMode.DRIVING
          };

       directionsService.route(request, function(result, status) {
            if (status === google.maps.DirectionsStatus.OK) {
                directionsDisplay.setDirections(result);
                addPontos();
                if (directionsDisplay.getMap() == null) {
                    directionsDisplay.setMap(mapAddRota);
                }
            }
        });
}

function getWaypoint(elem){
    return {
        location:new google.maps.LatLng(elem.latLng.lat(), elem.latLng.lng()),
        stopover:true
    };
}

路线没有,我收到一条消息,告诉我超过了最大 wypoints

4

1 回答 1

1

使用免费 API的单个方向请求中的最大路点数为 8 :

允许的最大航路点为 8 个,加上起点和终点。Maps API for Business 客户可以使用 23 个航点,以及起点和目的地。公交路线不支持航点。

如果您有“所有地理点”,则不需要方向服务,只需绘制折线即可。如果原始路线请求不包含航路点,那么您应该能够仅使用起点和目的地(您保存的路线的端点)重新创建它,如果它确实包含航路点,您也需要保存它们。

请注意,“概览路径”(在标题中,但不是问题)并不总是包括完全遵循道路所需的“所有地理点”。

于 2013-06-04T21:40:06.417 回答