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 waypoints de destino, a matriz de resposta vai conter quatro elementos, um para cada rota calculada.

Com a resposta, você pode oferecer aos clientes diferentes opções de trajeto e permitir que o usuário selecione o trajeto adequado para os requisitos dele.

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, sua resposta inclui apenas os campos especificados explicitamente na máscara de campo.

Para mais informações, consulte Escolher as informações a serem retornadas.

Sobre a exibição de direitos autorais

Inclua a seguinte declaração de direitos autorais ao mostrar os resultados aos 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 define a rota de um ponto de passagem 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)
    }
  }
  …
]