Ringkasan penelusuran di sepanjang rute

Fitur penelusuran di sepanjang rute tersedia di Places (Baru) API berikut:

  • Text Search (Baru) saja: Menelusuri tempat di sepanjang rute perjalanan yang telah ditentukan.
  • Text Search (Baru) dan Nearby Search (Baru): Menghitung ringkasan perutean dari lokasi asal perutean yang ditentukan ke setiap tempat dalam hasil penelusuran.
  • Text Search (Baru) saja: Menghitung ringkasan perutean untuk setiap tempat di sepanjang rute perjalanan yang telah ditentukan.

Menelusuri di sepanjang rute

Anda menggunakan Routes API untuk menghitung rute perjalanan antara dua lokasi. Routes API dapat menghitung rute untuk mobil, sepeda, kendaraan roda dua, sistem transportasi umum, atau untuk berjalan kaki.

Penelusuran Teks (Baru) memungkinkan Anda menggunakan rute yang dihitung ini untuk melakukan penelusuran di sepanjang rute. Dengan opsi ini, Anda meneruskan rute yang telah dihitung sebelumnya dari Routes API ke permintaan Text Search (Baru). Respons kemudian berisi tempat yang cocok dengan kriteria penelusuran dan juga berlokasi di dekat rute yang ditentukan.

Penelusuran di sepanjang rute mirip dengan penggunaan opsi permintaan locationRestriction atau locationBias untuk membiaskan hasil penelusuran. locationRestriction menampilkan hasil penelusuran yang berada dalam batas area pandang, sedangkan locationBias dapat menampilkan hasil penelusuran di luar area pandang. Namun, meskipun opsi locationBias dan locationRestriction memungkinkan Anda menentukan wilayah untuk membiaskan hasil penelusuran, fitur penelusuran di sepanjang rute di Text Search juga memungkinkan Anda membiaskan hasil penelusuran untuk menyertakan hasil dengan waktu penyimpangan minimal dari tempat asal rute ke tujuan rute. Anda dapat membiaskan hasil penelusuran menggunakan locationBias atau locationRestriction yang dikombinasikan dengan polyline.

Misalnya, pertimbangkan rute dari tempat asal, yang disebut sebagai titik jalan di Routes API, ke tujuan seperti yang dihitung oleh Routes API:

Rute dari titik jalan asal ke tujuan dengan hasil penelusuran.

Saat Anda menelusuri di sepanjang rute, penelusuran akan dibiaskan untuk menampilkan tempat di dekat rute dengan waktu penyimpangan minimal dari tempat asal ke tujuan. Dalam contoh ini, titik A, B, dan C adalah tempat yang ditampilkan oleh penelusuran.

Menghitung ringkasan perutean

Text Search (Baru) dan Nearby Search (Baru) dapat menghitung ringkasan perutean, yang berarti durasi dan jarak, ke setiap tempat dalam respons berdasarkan lokasi asal perutean yang ditentukan dalam permintaan. Saat Anda menentukan tempat asal perutean, respons tidak hanya berisi daftar tempat yang cocok dengan penelusuran, tetapi juga durasi dan jarak perjalanan dari tempat asal perutean ke setiap tempat.

Pada gambar berikut, titik A, B, dan C adalah tempat yang ditampilkan dalam respons penelusuran:

Titik A, B, dan C adalah tempat yang ditampilkan dalam respons penelusuran.

Untuk setiap tempat dalam hasil, respons berisi durasi dan jarak perjalanan dari tempat asal perutean ke tempat tersebut, jika tersedia.

Secara default, durasi dan jarak perjalanan dihitung menggunakan opsi TRAFFIC_UNAWARE di Routes API. Anda dapat secara opsional menetapkan preferensi perutean untuk mempertimbangkan kondisi lalu lintas langsung TRAFFIC_AWARE_OPTIMAL atau kondisi lalu lintas langsung dengan latensi yang dikurangi TRAFFIC_AWARE selama penghitungan.

Tentang rute, segmen, dan titik jalan

Beberapa komponen membentuk rute, seperti yang dihitung oleh Routes API:

Komponen yang membentuk rute.

Rute terdiri dari komponen berikut:

  • Waypoint: Untuk menghitung rute, Anda menentukan minimal lokasi tempat asal dan tujuan. Anda menentukan lokasi ini sebagai titik jalan di rute. Titik jalan perantara adalah lokasi di antara tempat asal dan tujuan yang ingin Anda lalui.
  • Rute: Seluruh perjalanan dari titik jalan asal, melalui titik jalan perantara, hingga titik jalan tujuan. Rute terdiri dari satu atau lebih segmen.

    Saat meneruskan rute ke Text Search, Anda meneruskan polyline yang dienkode dari rute seperti yang ditampilkan oleh Routes API. Polyline yang dienkode adalah daftar titik lintang dan bujur yang dienkode yang memungkinkan Anda merepresentasikan polyline rute sebagai string.

  • Segmen: Jalur dari satu titik jalan dalam rute ke titik jalan berikutnya dalam rute. Setiap segmen terdiri dari satu atau beberapa langkah terpisah.

    Rute berisi segmen terpisah untuk jalur dari setiap titik jalan ke titik jalan berikutnya. Misalnya, jika rute berisi satu titik jalan asal dan satu titik jalan tujuan, rute akan berisi satu segmen.

    Untuk setiap titik jalan tambahan yang Anda tambahkan ke rute setelah tempat asal dan tujuan, yang disebut titik jalan perantara, API akan menambahkan segmen terpisah.

Untuk mengetahui informasi selengkapnya tentang rute dan penghitungan rute, lihat Routes API.

Menghitung ringkasan perutean dengan penelusuran di sepanjang rute

Anda dapat menggabungkan penghitungan ringkasan perutean dengan penelusuran di sepanjang rute. Dalam hal ini, Text Search (Baru) menampilkan durasi perjalanan dan jarak ke setiap tempat dalam respons, lalu dari setiap tempat ke tujuan akhir rute. Anggap penghitungan ini memberikan durasi dan jarak perjalanan jika Anda menyimpang dari rute yang ditentukan untuk melakukan perjalanan ke tempat dalam hasil penelusuran, lalu melanjutkan ke tujuan akhir.

Misalnya, pertimbangkan rute berikut dari tempat asal ke tujuan seperti yang dihitung oleh Routes API. Teruskan rute ini ke Text Search (Baru) API bersama dengan kriteria penelusuran Anda.

Rute dari titik jalan asal ke tujuan dengan jalan memutar untuk menelusuri hasil.

Dalam contoh ini, lokasi A adalah tempat yang ditampilkan dalam hasil penelusuran dari Text Search (Baru). Untuk setiap tempat dalam respons, penelusuran mencakup durasi dan jarak yang diperlukan untuk menyimpang ke tempat tersebut sebagai perjalanan dua segmen:

  • Segmen pertama berisi durasi dan jarak perjalanan dari tempat asal rute ke tempat. Dalam contoh ini, dari tempat asal ke tempat A.
  • Segmen kedua berisi durasi dan jarak perjalanan dari tempat ke tujuan rute. Dalam contoh ini, dari A ke tujuan.

Dari informasi dalam respons, Anda kemudian dapat menghitung durasi dan jarak penyimpangan, dengan:

  • \(t_{OD}\) adalah durasi perjalanan dari tempat asal ke tujuan, \(s_{OD}\) adalah jarak perjalanan dari tempat asal ke tujuan
  • \(t_{OA}\) adalah durasi perjalanan dari tempat asal ke A; \(s_{OA}\) adalah jarak perjalanan dari tempat asal ke A
  • \(t_{AD}\) adalah durasi perjalanan dari A ke tujuan; \(s_{AD}\) adalah jarak perjalanan dari A ke tujuan

Durasi penyimpangan adalah perbedaan durasi antara perjalanan asli (dari tempat asal ke tujuan) dan perjalanan baru (dari tempat asal ke tujuan melalui A):

$$ t_{detour} = t_{OA} + t_{AD} - t_{OD} $$

Jarak penyimpangan adalah perbedaan jarak antara perjalanan asli (dari tempat asal ke tujuan) dan perjalanan baru (dari tempat asal ke tujuan melalui A):

$$ s_{detour} = s_{OA} + s_{AD} - s_{OD} $$