จัดการจุดอ้างอิง

โดยค่าเริ่มต้น การนำทาง SDK สำหรับ Android จะค้นหาเส้นทางที่เร็วที่สุดไปยังจุดอ้างอิง แต่วิธีนี้ไม่ได้รับประกันว่ารถจะวิ่งบนถนนที่ผู้บริโภครออยู่หรือปลายทางปลอดภัยสำหรับคนขับ คู่มือนี้จะอธิบายถึง 2 ฟีเจอร์ที่คุณใช้ได้ในสถานการณ์ต่อไปนี้

  • เส้นทางด้านข้างของถนนที่ต้องการ
  • ฟีเจอร์การแวะพัก

ด้านข้างของค่ากำหนดการกําหนดเส้นทาง

ฟีเจอร์นี้ช่วยให้คุณมั่นใจได้ว่ารถจะวิ่งมาถึงฝั่งที่ถูกต้องของถนน คุณตั้งค่ากำหนดสำหรับการไปถึงบนถนนฝั่งใดด้านหนึ่งของถนนเมื่อคุณสร้างจุดอ้างอิงสำหรับจุดแวะพักนั้น คุณระบุค่ากำหนดได้ 2 วิธี คือ แสดงฝั่งเดียวกับของถนน หรือระบุทิศทางขาเข้า

ต้องการใช้ฝั่งเดียวกับถนน

คุณระบุพิกัดทางภูมิศาสตร์ของการชี้ทาง แล้วตั้งธง (setPreferSameSideOfRoad) ซึ่งระบุว่าคุณต้องการเดินทางเข้าด้านเดียวกันของถนนเหมือนการชี้ทางนั้น โดยจะตัดกับทางเท้าที่ใกล้ที่สุด

Waypoint waypoint =
   Waypoint.builder()
           .setLatLng(latitude, longitude)
           .setTitle("Somewhere in Sydney")
           .setPreferSameSideOfRoad(true)
           .build()

ตั้งค่าทิศทางการมาถึง

คุณระบุพิกัดทางภูมิศาสตร์ของจุดอ้างอิง แล้วระบุทิศทางขาเข้า (setPreferredHeading) ที่ตรงกับทิศทางการจราจรบนฝั่งเดียวกับถนนของผู้บริโภค

Waypoint waypoint =
   Waypoint.builder()
           .setLatLng(latitude, longitude)
           .setTitle("Somewhere in Sydney")
           .setPreferredHeading(preferredHeading)
           .build()

Navigation SDK จะเลือกส่วนของถนนที่ใกล้กับจุดอ้างอิงมากที่สุด โดยกำหนดทิศทางของช่องทางไว้ (ภายใน +/- 55 องศา) กับด้านข้างของถนนที่จุดอ้างอิงตั้งอยู่

ตั้งค่ากำหนดจุดแวะพัก

ในบางสถานที่ ผู้ขับขี่ไม่สามารถหยุดรถอย่างปลอดภัยได้ (เช่น พื้นที่บนที่สูง เรือข้ามฟาก ตำแหน่งใต้ดิน และพื้นที่อื่นๆ ที่มีการเข้าถึงที่จำกัด) ฟีเจอร์แวะพักจะย้ายตำแหน่งทางไปยังสถานที่ใกล้เคียงหากตำแหน่งไม่เหมาะกับยานพาหนะที่จะแวะพัก เมื่อคุณตั้งค่า setVehicleStopover เป็น true จุดอ้างอิงจะถูกย้ายโดยอัตโนมัติเมื่อคำนวณเส้นทาง หากมีตำแหน่งสำรอง

วิธีการทำงาน

คุณตั้งค่ากำหนดสำหรับการแวะพักเมื่อสร้างจุดอ้างอิงสำหรับจุดแวะพักนั้น โดยให้ระบุค่ากำหนด setVehicleStopover ตามที่แสดงในตัวอย่างต่อไปนี้

Waypoint waypoint =
   Waypoint.builder()
           .setLatLng(latitude, longitude)
           .setTitle("Somewhere in Sydney")
           .setVehicleStopover(true)
           .build()