La nouvelle bibliothèque Routes de l'API Maps JavaScript inclut la classe Route
, qui remplace l'ancien service Directions. Cette page explique les différences entre l'ancien service Directions et la nouvelle classe Route
, et fournit du code à des fins de comparaison.
Service Directions (ancienne version) et classe Route (bêta)
Paramètres de requête
Le tableau suivant compare les paramètres de requête pour l'ancien service Directions et la classe Route
.
Comparaison des méthodes
Le tableau suivant compare les méthodes clés de l'ancien service Directions et de la classe Route
.
Comparaison de code
Cette section compare deux extraits de code similaires pour illustrer les différences entre l'ancien service Directions et la nouvelle classe Route
. Les extraits de code montrent le code requis sur chaque API respective pour effectuer une requête d'itinéraire, puis utilisent le résultat pour dessiner une polyligne et des repères sur la carte.
Dans l'ancien service Directions, l'objet DirectionsRenderer
est utilisé pour afficher des polylignes et des repères afin de représenter les résultats d'itinéraire sur une carte. Dans la bibliothèque Routes, l'objet DirectionsRenderer
a été remplacé par les méthodes createPolylines()
et createWaypointAdvancedMarkers()
. Cette page explique les différences entre l'ancien service Directions et la nouvelle classe Route
, et fournit du code à des fins de comparaison.
Calculer des itinéraires
Service Directions (ancienne version)
Le code suivant obtient des itinéraires en voiture à l'aide de l'ancien service Directions, puis utilise DirectionsRenderer
pour dessiner une polyligne et des repères sur la carte :
// Define a simple request. var request = { origin: 'Mountain View, CA', destination: 'San Francisco, CA', travelMode: 'DRIVING' }; // Call the Directions Service to get the directions. directionsService.route(request, function(result, status) { if (status == 'OK') { directionsRenderer.setDirections(result); // Add polyline and markers to the map. } });
Classe Route (bêta)
Le code suivant obtient des itinéraires à l'aide de la nouvelle classe Route, puis utilise la méthode createPolylines
pour dessiner une polyligne sur la carte et la méthode createWaypointAdvancedMarkers
pour dessiner des repères sur la carte.
La nouvelle classe Route
ne génère pas automatiquement les repères. Vous devez appeler createWaypointAdvancedMarkers
pour afficher les repères.
// Define a simple request. const request = { origin: 'Mountain View, CA', destination: 'San Francisco, CA', travelMode: 'DRIVING', fields: ['path', 'legs'], // Request fields needed to draw polylines. }; // Call computeRoutes to get the directions. const {routes} = await Route.computeRoutes(request); // Use createPolylines to create a polyline for the route. mapPolylines = routes[0].createPolylines(); // Add polylines to the map mapPolylines.forEach((polyline) => polyline.setMap(map)); // Create markers to start and end points. const markers = await routes[0].createWaypointAdvancedMarkers(); // Add markers to the map markers.forEach((marker) => marker.setMap(map));