Analisar a resposta da matriz de rota

Uma solicitação de matriz de rotas usa como entrada uma matriz de pontos de referência de origem e destino. A API Routes calcula a rota de cada ponto de referência de origem para cada ponto de referência de destino. Por exemplo, se você especificar dois waypoints de origem e dois waypoints de destino, a API vai calcular quatro rotas diferentes.

A resposta da API contém uma matriz, em que cada elemento corresponde à rota de um ponto de passagem de origem para um ponto de passagem de destino. Portanto, se você especificar dois waypoints de origem e dois de destino, a matriz de resposta conterá quatro elementos, um para cada trajeto calculado.

Usando a resposta, você pode fornecer aos clientes diferentes opções de trajeto e, em seguida, permitir que o usuário selecione a opção apropriada.

Sobre as máscaras de campo

Ao chamar um método para calcular uma rota, é necessário especificar uma máscara de campo que define quais campos você quer que sejam retornados na resposta. Não há uma lista padrão de campos retornados. Se você omitir essa lista, os métodos vão retornar um erro.

Os exemplos neste documento mostram o objeto de resposta inteiro sem considerar as máscaras de campo. Em um ambiente de produção, a resposta inclui apenas os campos especificados explicitamente na máscara de campo.

Para mais informações, consulte Escolher quais informações retornar.

Sobre a exibição de direitos autorais

Você deve incluir a seguinte declaração de direitos autorais ao exibir os resultados aos seus usuários:

Powered by Google, ©YEAR Google

Exemplo:

Powered by Google, ©2023 Google

Identificar a rota na resposta

Use as propriedades de resposta originIndex e destinationIndex para identificar cada rota na resposta. Essas propriedades contêm o índice baseado em zero dos waypoints de entrada origem e destino usados para calcular a rota. Isso significa que o primeiro ponto de passagem de origem e o primeiro ponto de passagem de destino na solicitação estão no índice 0 da matriz.

Por exemplo, uma rota na resposta contém:

"originIndex": 1,
"destinationIndex": 0

Essas propriedades indicam que a rota foi calculada a partir do ponto de passagem de origem no índice 1 na matriz de entrada e do ponto de passagem de destino no índice 0.

Para a próxima rota:

"originIndex": 4,
"destinationIndex": 1

A rota foi calculada a partir do ponto de passagem de origem no índice 4 na matriz de entrada e do ponto de passagem de destino no índice 1 na matriz de entrada.

Sobre a resposta

O objeto JSON que representa a resposta da API contém uma matriz, em que cada elemento da matriz define o trajeto de um waypoint de origem para um de destino.

Além das propriedades originIndex e destinationIndex, cada rota contém informações específicas, como distanceMeters, duration e travelAdvisory.

A resposta tem a seguinte forma:

[
  // One array element for each combination of origin and destination waypoints.
  {
    // The route for source waypoint 0 and destination waypoint 0.
    "originIndex": 0,
    "destinationIndex": 0,
    "status": {
      object (Status)
    },
    "condition": enum (RouteMatrixElementCondition),
    "distanceMeters": integer,
    "duration": string,
    "staticDuration": string,
    "travelAdvisory": {
      object (RouteTravelAdvisory)
    },
    "fallbackInfo": {
      object (FallbackInfo)
    }
  }
  {
    // The route for source waypoint 0 and destination waypoint 1.
    "originIndex": 0,
    "destinationIndex": 1,
    "status": {
      object (Status)
    },
    "condition": enum (RouteMatrixElementCondition),
    "distanceMeters": integer,
    "duration": string,
    "staticDuration": string,
    "travelAdvisory": {
      object (RouteTravelAdvisory)
    },
    "fallbackInfo": {
      object (FallbackInfo)
    }
  }
  …
]