Concetti fondamentali

Per generare un'isocrona, fornisci all'API un'origine, una modalità di viaggio come guida, motociclo, ciclismo o camminata e un limite di tempo. Puoi anche modificare le preferenze di routing e l'aspetto visivo del poligono risultante.

Orizzonte temporale

Il vincolo principale che fornisci al servizio è travel_duration. Definisce l'orizzonte temporale per il calcolo.

  • Durata massima: l'API supporta un tempo di percorrenza massimo di 3600 secondi (1 ora) per le modalità DRIVE e TWO_WHEELER e di 7200 secondi (2 ore) per le modalità WALK e BICYCLE.
  • Rendimento: il tempo di calcolo aumenta in base alla durata richiesta e alla modalità di viaggio selezionata. Un'isocrona di un'ora di guida copre un'area geografica e una rete stradale significativamente più grandi rispetto a un'isocrona di un'ora di camminata, il che comporta una latenza maggiore per la richiesta di guida.
  • Formattazione: poiché l'API utilizza google.protobuf.Duration, la durata deve essere formattata come una stringa che termina con una "s" (ad esempio, "3600s"), anziché come un numero intero.

Punti di origine e allineamento alle strade

Puoi specificare il punto di partenza dell'isocrona in due modi:

  • Coordinate: una coppia di latitudine e longitudine (location).
  • ID luogo: un identificatore univoco per un luogo specifico su Google Maps (place). Quando fornisci un ID luogo, il servizio utilizza il centroide del luogo come punto di origine. Tieni presente che l'API prevede il formato del nome della risorsa, ad esempio places/ChIJ.... Per saperne di più sugli ID luogo, consulta ID luogo.

Indipendentemente dal metodo di input, l'API non calcola i tempi di percorrenza dal punto fisico esatto se questo punto non si trova su una strada, ad esempio all'interno di un parco o di un edificio. Per gestire questa situazione, il servizio utilizza l'allineamento alle strade. L'allineamento alle strade ha le seguenti funzionalità:

  • Allineamento intelligente: il servizio tenta di allineare il punto di origine al segmento di strada percorribile più vicino.
  • Rilevamento della modalità: la logica di allineamento considera la travel_mode. Se richiedi DRIVE o TWO_WHEELER, l'API ignora i percorsi solo pedonali e cerca la strada percorribile più vicina. Se richiedi WALK, l'API dà la priorità a percorsi e marciapiedi percorribili a piedi.
  • Casi di errore: se l'API non riesce a trovare un segmento di strada adatto entro la distanza massima di allineamento del punto di origine (circa 150-200 metri, a seconda della modalità di viaggio: 200 metri per DRIVE e TWO_WHEELER, 180 metri per BICYCLE e 150 metri per WALK), l'API restituisce un errore 404 NOT_FOUND. In genere, questo indica che il punto è troppo lontano dalla rete stradale o in un'area in cui i dati della mappa non supportano la modalità di viaggio richiesta.

Direzione di viaggio (in entrata e in uscita)

Puoi calcolare la raggiungibilità in entrata e in uscita utilizzando il parametro travelDirection:

  • FROM (in uscita): calcola l'area raggiungibile dal punto di origine entro il limite di tempo specificato. È adatto a casi d'uso come zone di consegna o copertura del servizio.
  • TO (in entrata): calcola l'area da cui puoi raggiungere il punto di origine entro il limite di tempo specificato. È adatto per determinare le zone di raccolta, ad esempio da dove i dipendenti possono spostarsi per raggiungere un ufficio centrale.

Rilevamento del traffico

Controlla in che modo i dati sul traffico influenzano il poligono generato con il parametro routing_preference:

  • TRAFFIC_UNAWARE (impostazione predefinita): utilizza i limiti di velocità e la gerarchia stradale per generare il poligono dell'isocrona. Produce una forma deterministica che non varia in base all'ora del giorno. Questo parametro è ideale per l'analisi generale o la pianificazione di scenari di base.
  • TRAFFIC_AWARE: calcola le isocrone utilizzando le condizioni del traffico in tempo reale o predittive al momento della richiesta, facendo sì che l'area raggiungibile si riduca durante la congestione e si espanda durante le ore non di punta. Nota: il routing con rilevamento del traffico è supportato solo quando travel_mode è impostato su DRIVE o TWO_WHEELER.

Smoothing e fedeltà

Puoi personalizzare l'aspetto e la precisione dei poligoni di output utilizzando i parametri polygon_fidelity e enable_smoothing. Sebbene queste opzioni siano indipendenti, funzionano insieme per determinare la forma finale.

  • polygon_fidelity: controlla le dimensioni delle celle della griglia sottostante utilizzate per calcolare l'area raggiungibile.

    • LOW: utilizza celle della griglia più grandi. Ideale per coprire aree di grandi dimensioni senza spazi vuoti, con conseguente forma generalizzata.
    • MEDIUM: precisione bilanciata.
    • HIGH: utilizza celle della griglia più piccole. Produce un adattamento più preciso alla rete stradale, ma può generare aree vuote o fori se la rete stradale è scarsa.
    • POLYGON_FIDELITY_UNSPECIFIED: se non specificato, il servizio seleziona dinamicamente la fedeltà in base alla durata del viaggio richiesta.
      Fedeltà dei poligoni alta, media e bassa
      Fedeltà del poligono alta, media e bassa
  • enable_smoothing: controlla se gli spigoli vivi delle celle della griglia definite dalla fedeltà vengono arrotondati.

    • false (non elaborato): l'impostazione predefinita. Restituisce il calcolo geometrico esatto. I bordi appaiono frastagliati o a gradoni. Ideale per l'accuratezza analitica, ad esempio per i test rigorosi punto-in-poligono. Latenza inferiore rispetto a quella con smoothing.
    • true (con smoothing): applica un algoritmo di post-elaborazione per arrotondare gli angoli. Ideale per la visualizzazione sulle mappe.
      Iscrocrona con e senza smussatura
      Isocrona con e senza smoothing