Principais conceitos

Para gerar uma isócrona, forneça à API uma origem, um modo de viagem, como carro, moto, bicicleta ou a pé, e um limite de tempo. Também é possível ajustar as preferências de trajeto e a aparência visual do polígono resultante.

Horizonte temporal

A principal restrição que você fornece ao serviço é a travel_duration. Ela define o horizonte temporal para o cálculo.

  • Duração máxima:a API oferece suporte a um tempo máximo de viagem de 3.600 segundos (1 hora) para os modos DRIVE e TWO_WHEELER e 7.200 segundos (2 horas) para os modos WALK e BICYCLE.
  • Performance:o tempo de cálculo é dimensionado de acordo com a duração solicitada e o modo de viagem selecionado. Uma isócrona de uma hora de carro abrange uma área geográfica e uma rede viária significativamente maiores do que uma isócrona de uma hora a pé, o que resulta em maior latência para a solicitação de carro.
  • Formatação: como a API usa google.protobuf.Duration, a duração precisa ser formatada como uma string que termina em "s" (por exemplo, "3600s"), em vez de um número inteiro.

Pontos de origem e ajuste de vias

Você pode especificar o ponto de partida da isócrona de duas maneiras:

  • Coordenadas:um par de latitude e longitude (location).
  • IDs de lugar:um identificador exclusivo de um lugar específico no Google Maps (place). Quando você fornece um ID de lugar, o serviço usa o centroide desse lugar como o ponto de origem. A API espera o formato de nome do recurso, como places/ChIJ.... Para mais informações sobre IDs de lugar, consulte IDs de lugar.

Independente do método de entrada, a API não calcula os tempos de viagem do ponto físico exato se ele não estiver em uma via, como dentro de um parque ou edifício. Para lidar com essa situação, o serviço usa o ajuste de vias. O ajuste de vias tem os seguintes recursos:

  • Ajuste inteligente:o serviço tenta ajustar o ponto de origem ao segmento de via mais próximo.
  • Reconhecimento de modo:a lógica de ajuste considera o travel_mode. Se você solicitar DRIVE ou TWO_WHEELER, a API vai ignorar caminhos exclusivos para pedestres e procurar a rua mais próxima. Se você solicitar WALK, a API vai priorizar caminhos e calçadas para pedestres.
  • Casos de falha:se a API não encontrar um segmento de via adequado dentro da distância máxima de ajuste do ponto de origem (aproximadamente 150 a 200 metros, dependendo do modo de viagem: 200 metros para DRIVE e TWO_WHEELER, 180 metros para BICYCLE e 150 metros para WALK), a API vai retornar um erro 404 NOT_FOUND. Isso geralmente indica que o ponto está muito longe da rede viária ou em uma área em que os dados do mapa não oferecem suporte ao modo de viagem solicitado.

Direção da viagem (entrada x saída)

É possível calcular a acessibilidade de entrada e saída usando o parâmetro travelDirection:

  • FROM (saída) : calcula a área acessível do ponto de origem dentro do limite de tempo especificado. Isso é adequado para casos de uso, como zonas de entrega ou cobertura de serviço.
  • TO (entrada) : calcula a área de onde você pode viajar para o ponto de origem dentro do limite de tempo especificado. Isso é adequado para determinar zonas de captação, como de onde os funcionários podem se deslocar para chegar a um escritório central.

Reconhecimento de trânsito

Controle como as informações de trânsito influenciam o polígono gerado com o parâmetro routing_preference:

  • TRAFFIC_UNAWARE (padrão) : usa limites de velocidade e hierarquia de vias para gerar o polígono isócrono. Isso produz uma forma determinística que não varia com base na hora do dia. Esse parâmetro é ideal para análise geral ou planejamento de cenário de referência.
  • TRAFFIC_AWARE:calcula isócronas usando condições de trânsito em tempo real ou preditivas no momento da solicitação, fazendo com que a área acessível diminua durante o congestionamento e se expanda durante os horários de menor movimento. Observação:o trajeto com reconhecimento de trânsito só é compatível quando travel_mode está definido como DRIVE ou TWO_WHEELER.

Suavização e fidelidade

É possível personalizar a aparência e a precisão dos polígonos de saída usando os parâmetros polygon_fidelity e enable_smoothing. Embora essas opções sejam independentes, elas funcionam juntas para determinar a forma final.

  • polygon_fidelity:controla o tamanho das células da grade subjacente usadas para calcular a área acessível.

    • LOW:usa células de grade maiores. É melhor para cobrir grandes áreas sem lacunas, resultando em uma forma generalizada.
    • MEDIUM:precisão equilibrada.
    • HIGH:usa células de grade menores. Resulta em um ajuste mais apertado à rede viária, mas pode produzir áreas vazias ou buracos se a rede viária for esparsa.
    • POLYGON_FIDELITY_UNSPECIFIED:se não for especificado, o serviço vai selecionar dinamicamente a fidelidade com base na duração da viagem solicitada.
      Fidelidade de polígonos alta, média e baixa
      Fidelidade de polígono alta, média e baixa
  • enable_smoothing:controla se as bordas nítidas das células da grade definidas pela fidelidade são arredondadas.

    • false (bruto) : o padrão. Retorna o cálculo geométrico exato. As bordas aparecem irregulares ou escalonadas. É melhor para precisão analítica, como testes rigorosos de ponto em polígono. Latência menor do que a suavizada.
    • true (suavizado) : aplica um algoritmo de pós-processamento para arredondar os cantos. É melhor para exibição visual em mapas.
      Isócrona com e sem suavização
      Isócrona com e sem suavização