2016-08-09 2 views
0

Ich habe ein wenig über die Bing Map nachgedacht, da ich einige Routen optimieren muss. Jede Route hat 10 Stopps. Ich möchte die Wegpunkte neu ordnen nach vorschlagen von bing KarteBing Karte optimierte Route

meinen Code in Javascript ist

directionsManager = new Microsoft.Maps.Directions.DirectionsManager(map); 

directionsManager.setRenderOptions({ itineraryContainer: document.getElementById('directionsItinerary') }); 

var startWaypoint = new Microsoft.Maps.Directions.Waypoint({ 
    location: new Microsoft.Maps.Location(XX, YY),     
}); 

directionsManager.addWaypoint(startWaypoint); 

for (var i = 0; i < 10; i++) { 

    var waypoint = new Microsoft.Maps.Directions.Waypoint({ 
     location: new Microsoft.Maps.Location(XX, YY), 
    }) 

    directionsManager.addWaypoint(waypoint); 
} 

var endWaypoint = new Microsoft.Maps.Directions.Waypoint({ 
    location: new Microsoft.Maps.Location(XX, YY),     
}); 

directionsManager.addWaypoint(endWaypoint); 

directionsManager.setRequestOptions({ 
      routeDraggable: false, 
      routeOptimization: Microsoft.Maps.Directions.RouteOptimization.shortestDistance, 
      routeMode: Microsoft.Maps.Directions.RouteMode.driving 
     }); 

Microsoft.Maps.Events.addHandler(directionsManager, 'directionsUpdated', function(result) { 
    console.log(result); 
}); 

directionsManager.calculateDirections(); 

Auf der Veranstaltung directionsUpdated, wenn die api aufgerufen wird, werden die Wegpunkte nicht mehr nachbestellt. Immer ist die gleiche Reihenfolge, die ich sende

Funktioniert die Bing Map Routes API, um die Wegpunkte neu zu ordnen, wenn der Parameter "optimized" gesendet wird? Oder es funktioniert nur, um die Entfernung zwischen 2 Punkten zu minimieren?

Antwort

0

Bing Maps bietet keine Routenoptimierung für Reisende. Die in Bing Maps erwähnte Optimierung bezieht sich auf die Berechnung der Route durch die Wegpunkte in der Reihenfolge, in der sie bereitgestellt werden. Zum Beispiel, kürzeste Entfernung, kürzeste Zeit, kürzeste Zeit mit Verkehr. Es ist möglich, eine Entfernungsmatrix mit dem Routing-Dienst zu generieren und dann einen TSP-Algorithmus durch Code zu implementieren. Hier ist ein Codebeispiel, das dies mit JavaScript tut: https://1drv.ms/u/s!AgFqp4QkIjUNo5cpCk-qqNaQnxWT5w