A classe RouteMatrix
substitui o serviço Distance Matrix da API Maps JavaScript (legado).
Esta página explica as diferenças entre o serviço Distance Matrix legado e a nova biblioteca JavaScript, além de fornecer alguns códigos para comparação.
API Distance Matrix (legada) x classe Route Matrix (Beta)
A tabela a seguir compara os parâmetros de solicitação da API Distance Matrix legada e da classe RouteMatrix
.
Serviço Distance Matrix (legado) | RouteMatrix (Beta) |
---|---|
Parâmetros obrigatórios |
|
origins |
origins |
destinations |
destinations |
Parâmetros opcionais |
|
travelMode |
travelMode |
transitOptions |
transitPreference |
arrivalTime |
arrivalTime |
drivingOptions |
departureTime ,
trafficModel |
unitSystem |
units |
avoidHighways ,
avoidTolls |
RouteModifiers |
Comparação de código
Esta seção compara dois trechos de código semelhantes para ilustrar as diferenças entre a API Distance Matrix legada e a nova classe RouteMatrix
. Os snippets de código mostram
o código necessário em cada API para fazer uma solicitação de rotas e ver os resultados.
API Directions (legada)
O código a seguir faz uma solicitação de matriz de distâncias usando a API Distance Matrix legada.
// Define the request. const request = { origins: [{lat: 55.93, lng: -3.118}, 'Greenwich, England'], destinations: ['Stockholm, Sweden', {lat: 50.087, lng: 14.421}], travelMode: 'DRIVING', drivingOptions: { departureTime: new Date(Date.now()), trafficModel: 'optimistic' } }; // Make the request. service.getDistanceMatrix(request).then((response) => { // Display the response. document.getElementById("response").textContent = JSON.stringify( response, null, 2, ); });
Classe Route Matrix (Beta)
O código a seguir faz uma solicitação de matriz de distância usando a nova classe RouteMatrix:
// Define the request. const request = { origins: [{lat: 55.93, lng: -3.118}, 'Greenwich, England'], destinations: ['Stockholm, Sweden', {lat: 50.087, lng: 14.421}], travelMode: 'DRIVING', departureTime: new Date(), trafficModel: 'optimistic' }; // Make the request. const response = await RouteMatrix.computeRouteMatrix(request); // Display the response. document.getElementById("response").setValue(JSON.stringify(response, null, 2,));