経路沿いを検索
経路沿いを検索するためにText Search(New)を使用するには、Routes API から事前に計算された経路をリクエストでポリラインとして渡します。レスポンスには、検索条件に一致し、指定された経路の近くにある場所が含まれます。
経路沿いを検索する手順は次のとおりです。
-
searchAlongRouteParameters.polyline.encodedPolylineパラメータを使用して、経路のエンコードされたポリラインをテキスト検索(New)に渡して、検索結果を経路に偏らせます。レスポンスには、検索条件に一致し、指定された経路の近くにある場所が含まれます。
API Explorer を使用すると、ライブ リクエストを作成して、API と API オプションに慣れることができます。
デフォルトでは、テキスト検索(New)は、ポリラインで定義された出発地から目的地までの経路全体に沿って検索を行います。次の例では、ポリラインは次の経路を定義します。
- 出発地: 1600 Amphitheatre Parkway, Mountain View, CA
- 目的地: 24 Willie Mays Plaza, San Francisco, CA
この経路の旅程のエンコードされたポリラインは、次の文字列で表されます。
wblcFptchVIFOd@G@EVw@Ms@dHKR}ApNA`AF~@Hf@TjAb@bBb@~@n@p@^Rd@~@Vz@HVz@nDLt@?d@Kr@c@~@mD`G?`@aEfGkCnDuChDm`@bb@[`@{GhHeEdEciBnnBkC`DkC~DaClEuKjT_Z|l@Qb@iR~_@}EzJ_AdB_Und@kAfCaOjZkg@vcAqBzD_]rr@iBlEaBxEgArD}AlG}AhHsA`IeAnH{@dIq@dJgL~iBq@rHu@vGgAtHwArHaBhHkBzG_DpJ}Nbc@iBhGkA|EgC|LcIjb@oAhG_AvDgAdDkApC_BzCiBpCsFvGii@vn@scAxlAmLjNgSzUeRjT{TzWqExEmG|FuNlMmMhLaRvPqOlNmbAl}@mFlF{PlOmJfIoElE}LtMiSbU_H`I}}@jcAwl@vp@oAbBqA~BeAhCm@tBg@fCWrBQ~BI|DaB~rBO~D[bEa@`Dm@pDaAdE{@vC_BbEkB~Def@|z@sEzHKJeS~]}K`S{\\~l@cXpe@sBpDm@bAuCxDkBrBiC~BwCtByBnAcBx@}Bt@{Bn@gh@|LaOpDeFhAoDj@aE^kVrA_E^iEr@yD~@uBr@gMjF_EnAcCh@eFr@_DRsAD}@Jsu@xCWDqIV}BCeCOyDm@cBa@_DmA}JeE_CwAsBcBiBoBuAqBmOoX{CuEkB_CoDqDkVoUoD{CeE_DkEkC_FeCqB}@sDuAoDgAeCe@cCW}CK}BDaDTeOlBcuBrYaNlBq@Dyd@rGyFt@yBb@eBf@oCnAoBlAkIpGkAp@wBbAaCt@oFdAwKjBoGxA{FbByIjC_HfB_@KmNdDuC|@uFzBcH|C{@\\[?sBv@}@VaBVoA@y@EmAQcA[w@]aBkAeAkA}BuDUKs@uAqBsCwBcCgAiAiN_MyKsJsG{GkBaBiBuA{BwAwDkBcOaHiC_AiCg@}BQcCAcBHqBVkB`@qEjAu@LgCVgAHwG@sG?mABsH^eNr@mBXy@NqBt@uAt@aBlAkAlA}BtCyApBiAdB_BxB{A`B}@j@oAf@s@PeCVcIf@gAAkAQy@YiAo@_A{@_DgEgJqM_DeEaM}PoBiCzAsBw@kAdAGVk@f@q@z@C次の例では、経路のエンコードされたポリラインを使用して検索結果を偏らせています。
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' \
'https://places.googleapis.com/v1/places:searchText'レスポンスには、検索条件に一致する場所が含まれます。これは経路に偏っています。
{ "places": [ { "formattedAddress": "60 Morris St, San Francisco, CA 94107, USA", "priceLevel": "PRICE_LEVEL_MODERATE", "displayName": { "text": "Umami Express", "languageCode": "en" } }, { "formattedAddress": "1130 4th St, San Francisco, CA 94158, USA", "priceLevel": "PRICE_LEVEL_MODERATE", "displayName": { "text": "House of Tadu Ethiopian Kitchen", "languageCode": "en" } }, { "formattedAddress": "1602 El Camino Real Ste A, Belmont, CA 94002, USA", "priceLevel": "PRICE_LEVEL_MODERATE", "displayName": { "text": "Eats Meets West Bowls", "languageCode": "en" } }, /.../ ] }
結果を経路全体に偏らせる必要はありません。たとえば、検索を実行する前に、経路の途中にいる場合があります。この場合、 検索に明示的なルーティングの出発地を指定して、エンコードされたポリラインで定義された出発地 をオーバーライドできます。次の例では、経路ポリラインのおよそ中間にあるカリフォルニア州サンマテオの緯度と経度の座標を指定します。
curl -X POST -d '{
"textQuery" : "Spicy Vegetarian Food",
"searchAlongRouteParameters": {
"polyline": {
"encodedPolyline": "ROUTE_POLYLINE"
}
},
"routingParameters": {
"origin": {
"latitude": 37.56617,
"longitude": -122.30870
}
}
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel' \
'https://places.googleapis.com/v1/places:searchText'試してみよう:
API Explorer を使用すると、サンプル リクエストを作成して、API と API オプションに慣れることができます。
ページの右側にある API アイコン api を選択します。
必要に応じてリクエスト パラメータを編集します。
[実行] ボタンを選択します。ダイアログで、リクエストの送信に使用するアカウント を選択します。
API Explorer パネルで、全画面アイコン fullscreen を選択して API Explorer ウィンドウを開きます。