Menetapkan perhentian di sepanjang rute

Developer Wilayah Ekonomi Eropa (EEA)

Anda dapat menyetel perhentian di sepanjang rute, seperti untuk penjemputan atau pengantaran, dengan salah satu dari dua cara:

  • Menambahkan titik jalan perantara: Ini adalah opsi default. Tambahkan titik jalan menengah antara titik asal dan tujuan dalam array intermediates. Mesin perutean menyelaraskan titik jalan ke jalan yang dapat dilalui terdekat dan membagi rute menjadi RouteLeg segmen yang terhubung dengan perhentian tersebut.
  • Tentukan vehicleStopover: Jika Anda ingin mesin perutean melakukan analisis tambahan untuk menghindari segmen jalan yang tidak sesuai untuk berhenti—seperti jalan tol, terowongan, atau jalan layang—tetapkan vehicleStopover: true pada titik jalan.

Menambahkan titik jalan perantara

Untuk menetapkan perhentian di sepanjang rute, tambahkan titik jalan perantara ke array intermediates dalam permintaan Anda.

Menambahkan titik jalan perantara memiliki efek berikut:

  • Rute dibagi menjadi RouteLeg segmen: Setiap segmen menghubungkan satu perhentian ke perhentian berikutnya.
  • Koordinat dipaskan ke jalan: Mesin perutean memaskan koordinat lintang dan bujur Anda, yang mungkin berada di atap atau di halaman, ke segmen jalan terdekat yang dapat dilalui.

Untuk banyak jalan arteri, menyematkan ke jalan terdekat memberikan lokasi perhentian yang praktis. Namun, penarikan tidak menentukan apakah segmen jalan tersebut sesuai untuk menepi, seperti saat jalan terdekat adalah jalan tol atau terowongan.

Contoh: Menambahkan titik jalan perantara

Contoh berikut menunjukkan cara menyetel perhentian di sepanjang rute dengan menambahkan titik jalan perantara dalam permintaan POST computeRoutes:

curl -X POST -d '{
  "origin":{
    "location":{
      "latLng":{
        "latitude": 37.419734,
        "longitude": -122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude": 37.417670,
        "longitude": -122.079595
      }
    }
  },
  "intermediates": [
    {
      "location":{
        "latLng":{
          "latitude": 37.419734,
          "longitude": -122.0807784
        }
      }
    }
  ],
  "travelMode": "DRIVE"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.legs' \
'https://routes.googleapis.com/directions/v2:computeRoutes'

Untuk mengetahui informasi selengkapnya tentang titik jalan perantara dan segmen rute, lihat Menetapkan titik jalan perantara.

Menentukan vehicleStopover untuk kesesuaian pengambilan dan pengantaran

Meskipun titik jalan perantara standar akan menyesuaikan ke jalan terdekat, jalan tersebut tidak selalu cocok untuk tempat pemberhentian kendaraan. Jika Anda ingin mesin perutean melakukan analisis tambahan untuk mengevaluasi kesesuaian jalan untuk penjemputan atau pengantaran, tetapkan vehicleStopover: true di titik jalan.

Saat Anda menyetel vehicleStopover: true, mesin perutean akan mengevaluasi segmen jalan kandidat dan mencoba menghindari jalan yang tidak cocok untuk berhenti, seperti jalan bebas hambatan, terowongan, dan jalan layang.

Misalnya, pertimbangkan lokasi di mana jalan permukaan melewati langsung jalan tol di dalam terowongan: * Titik jalan perantara standar: Berpindah ke jalan tol atau terowongan di bawahnya jika secara geometris lebih dekat dengan koordinat Anda. * Persinggahan kendaraan: Melakukan analisis tambahan untuk melewati jalan tol dan terowongan, menyematkan perhentian ke jalan permukaan yang cocok untuk berhenti.

Contoh: Menentukan vehicleStopover di titik jalan

Contoh berikut menunjukkan cara menyetel vehicleStopover: true pada titik jalan perantara dalam permintaan POST lengkap:

curl -X POST -d '{
  "origin":{
    "location":{
      "latLng":{
        "latitude": 37.419734,
        "longitude": -122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude": 37.417670,
        "longitude": -122.079595
      }
    }
  },
  "intermediates": [
    {
      "location":{
        "latLng":{
          "latitude": 37.419734,
          "longitude": -122.0807784
        }
      },
      "vehicleStopover": true
    }
  ],
  "travelMode": "DRIVE"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.legs' \
'https://routes.googleapis.com/directions/v2:computeRoutes'

Untuk mengetahui informasi selengkapnya tentang jenis dan opsi titik jalan, lihat Jenis dan opsi titik jalan.