Combina i riepiloghi dei percorsi con la ricerca lungo il percorso

Puoi combinare i calcoli del riepilogo del percorso con la ricerca lungo un percorso. In questo caso, Ricerca testuale (nuova) restituisce la durata e la distanza del viaggio per ogni luogo nella risposta, quindi da ogni luogo alla destinazione finale del percorso.

Per utilizzare Ricerca testuale (New) per calcolare il riepilogo del calcolo itinerario insieme alla ricerca lungo una route:

  1. Utilizza l'API Routes per calcolare un percorso che restituisca una polilinea del percorso nella risposta.

  2. Utilizza il parametro searchAlongRouteParameters.polyline.encodedPolyline per passare la polilinea del percorso a Ricerca testuale (novità) in modo da orientare i risultati di ricerca in base al percorso. La risposta contiene quindi i luoghi che corrispondono ai criteri di ricerca e che si trovano anche nelle vicinanze del percorso specificato.

  3. Includi routingSummaries nella maschera di campo in modo che la risposta includa l'array routingSummaries. Questo array contiene la durata e la distanza dall'origine del percorso a ogni luogo nella risposta.

Explorer API ti consente di effettuare richieste in tempo reale per acquisire familiarità con l'API e le relative opzioni:

Per impostazione predefinita, Ricerca testuale (New) esegue la ricerca lungo l'intero percorso:

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food",
  "searchAlongRouteParameters": {
    "polyline": {
      "encodedPolyline": "ROUTE_POLYLINE"
    }
  }
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,routingSummaries' \
'https://places.googleapis.com/v1/places:searchText'

La risposta contiene due array: l'array places contenente i luoghi corrispondenti e l'array routingSummaries contenente la durata e la distanza per raggiungere ogni luogo:

{
  "places": [
    {
      "formattedAddress": "1199 El Camino Real, San Bruno, CA 94066, USA",
      "priceLevel": "PRICE_LEVEL_INEXPENSIVE",
      "displayName": {
        "text": "Vegan Mob - Vegan BBQ and Soul Food",
        "languageCode": "en"
      }
    },
    {
      "formattedAddress": "839 Kearny St, San Francisco, CA 94108, USA",
      "priceLevel": "PRICE_LEVEL_MODERATE",
      "displayName": {
        "text": "Enjoy Vegetarian",
        "languageCode": "en"
      }
    },
   …
],
  "routingSummaries": [
    {
      "legs": [
        {
          "duration": "285s",
          "distanceMeters": 1616
        },
        {
          "duration": "2466s",
          "distanceMeters": 58147
        }
      ],
      "directionsUri": "https://www.google.com/maps/dir/37.42268,-122.08473/''/37.77877,-122.38781/data=!4m7!4m6!1m0!1m2!1m1!1s0x808f87f9ede375f5:0xa37171fea1a16b28!1m0!3e0"
    },
    {
      "legs": [
        {
          "duration": "696s",
          "distanceMeters": 4704
        },
        {
          "duration": "2787s",
          "distanceMeters": 58901
        }
      ],
      "directionsUri": "https://www.google.com/maps/dir/37.42268,-122.08473/''/37.77877,-122.38781/data=!4m7!4m6!1m0!1m2!1m1!1s0x808580f4cebdb06f:0xd3af09e5742234f2!1m0!3e0"
    },
   …
  ]
}

Per ogni voce dell'array legs, Ricerca testuale (New) restituisce un tempo di percorrenza di un percorso in due tappe:

  • La prima tappa contiene la durata e la distanza del viaggio dal punto di partenza al luogo. In questo esempio, la durata e la distanza dall'origine al primo luogo nei risultati sono 285 secondi e 1616 metri.

  • La seconda tappa contiene la durata del viaggio e la distanza dal luogo alla destinazione del percorso. In questo esempio, la durata e la distanza sono 2466 secondi e 58.147 metri.

Specifica l'origine del percorso, la modalità di viaggio e i modificatori del percorso

Puoi modificare il calcolo del riepilogo della ricerca e del routing specificando l'origine del routing, la modalità di viaggio, i modificatori del percorso e le preferenze di routing. La modalità di viaggio e i modificatori di percorso funzionano allo stesso modo del calcolo dei riepiloghi dei percorsi senza specificare un percorso, come mostrato nell'argomento Specifica le opzioni di viaggio.

Per impostazione predefinita, la prima tappa di ogni risultato contiene la distanza dall'origine definita dalla polilinea a ogni luogo. Tuttavia, puoi eseguire l'override di questa impostazione predefinita specificando esplicitamente un'origine di routing nella richiesta. Se specificata, la prima tappa di tutte le risposte specifica le distanze e la durata dall'origine del percorso specificata, eseguendo l'override dell'origine dalla polilinea.

Nell'esempio successivo, specifichi un'origine del percorso con le coordinate di San Mateo, in California, specifichi di evitare i pedaggi e imposti il numero di risultati su 5:

  curl -X POST -d '{
    "textQuery" : "Spicy Vegetarian Food",
    "maxResultCount": 5,
    "searchAlongRouteParameters": {
      "polyline": {
        "encodedPolyline": "ROUTE_POLYLINE"
      }
    },
    "routingParameters": {
      "origin": {
        "latitude": 37.56617,
        "longitude": -122.30870
      },
      "travelMode":"DRIVE",
      "routeModifiers": {
        "avoidTolls": true
      }
    }
  }' \
  -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
  -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,routingSummaries' \
  'https://places.googleapis.com/v1/places:searchText'

L'immagine seguente mostra una mappa che contiene la polilinea del percorso, la nuova origine (indicatore azzurro) e i luoghi nei risultati di ricerca (indicatori verdi). Nota come tutti i risultati si trovano lungo il percorso, ma oltre San Mateo:

Risultati di ricerca dall'origine dell'aggiornamento.

Prova

Explorer API ti consente di effettuare richieste di esempio per acquisire familiarità con l'API e le relative opzioni.

  1. Seleziona l'icona API api sul lato destro della pagina.

  2. Se vuoi, modifica i parametri della richiesta.

  3. Seleziona il pulsante Esegui. Nella finestra di dialogo, scegli l'account che vuoi utilizzare per effettuare la richiesta.

  4. Nel riquadro Explorer API, seleziona l'icona a schermo intero fullscreen per espandere la finestra di Explorer API.