Menetapkan titik untuk rute yang akan dilalui

Developer Wilayah Ekonomi Eropa (EEA)

Secara default, titik jalan perantara digunakan untuk berhenti guna menjemput dan menurunkan penumpang, tetapi Anda juga dapat menentukan bahwa titik jalan perantara hanya dimaksudkan untuk dilewati.

Rute yang berisi titik jalan asal, titik jalan perantara yang dilewati, dan titik jalan tujuan hanya berisi satu segmen rute yang menghubungkan tempat asal dan tujuan, sekaligus melewati titik jalan perantara (disebut via).

Konfigurasikan titik jalan perantara menjadi titik jalan yang dilewati dengan menetapkan properti via titik jalan ke true menggunakan antarmuka Waypoint.

Properti via paling efektif saat membuat rute sebagai respons terhadap pengguna yang menarik titik jalan di peta. Dengan demikian, pengguna dapat melihat tampilan rute akhir secara real-time dan membantu memastikan bahwa titik jalan ditempatkan di lokasi yang dapat diakses oleh library Routes.

Contoh permintaan

Contoh permintaan berikut menunjukkan cara menandai titik jalan perantara sebagai titik jalan yang dilewati.

const routeRequestWithVia = {
  origin: '100 Moffett Blvd, Mountain View, CA 94043',
  destination: '1199 9th Ave, San Francisco, CA 94122',
  travelMode: 'DRIVING',
  intermediates: [
    {location: 'Half Moon Bay, CA', via: true} // Set the via property to true
  ],
  fields: ['path', 'legs'],
};

// Make the request.
const {routes, fallbackInfo, geocodingResults} = await Route.computeRoutes(routeRequestWithIntermediates);
  

Mengakses ID tempat untuk titik jalan perantara

Jika Anda menentukan lokasi asal, tujuan, atau titik jalan perantara sebagai string alamat atau sebagai Plus Code, library Routes akan mencoba menemukan lokasi yang paling relevan yang memiliki ID tempat yang sesuai. Array geocodingResults.intermediates dalam hasil berisi ID tempat yang sesuai dengan lokasi titik jalan, beserta data tambahan tentang lokasi tersebut.

Contoh respons hasil geocoding

{
  "origin": {
    "geocoderStatus": "OK",
    "types": [
      "premise",
      "street_address"
    ],
    "partialMatch": false,
    "placeId": "ChIJb5NgcTa3j4ARrfF4Oc_f6q8",
    "intermediateWaypointRequestIndex": null
  },
  "destination": {
    "geocoderStatus": "OK",
    "types": [
      "premise",
      "street_address"
    ],
    "partialMatch": false,
    "placeId": "ChIJAbIPLl2HhYARQ0SSdDFxU-s",
    "intermediateWaypointRequestIndex": null
  },
  "intermediates": [
    {
      "geocoderStatus": "OK",
      "types": [
        "locality",
        "political"
      ],
      "partialMatch": false,
      "placeId": "ChIJC8sZCqULj4ARVJvnNcic_V4",
      "intermediateWaypointRequestIndex": 0
    }
  ]
}