โดยค่าเริ่มต้น Compute Routes
วิธีของ Routes API จะคำนวณเส้นทางผ่านจุดแวะพักหลายแห่ง ซึ่งเรียกว่าจุดแวะพักกลางทาง ตามลำดับที่คุณระบุ
คุณสามารถทำให้ Routes API เพิ่มประสิทธิภาพเส้นทางที่ระบุได้ด้วยการจัดเรียงจุดแวะพักใหม่ตามลำดับที่มีประสิทธิภาพมากขึ้น การเพิ่มประสิทธิภาพจุดแวะพักจะเพิ่มประสิทธิภาพเพื่อเวลาเดินทาง แต่ก็พิจารณาปัจจัยอื่นๆ ด้วย เช่น ระยะทางและจำนวนทางโค้ง เมื่อตัดสินใจว่าเส้นทางใดมีประสิทธิภาพสูงสุด
เพื่อเพิ่มประสิทธิภาพจุดอ้างอิง
ตรวจสอบว่าไม่มีจุดแวะพักในเส้นทางใดที่
via
ตั้งค่าเป็นtrue
เช่น{"address": "Clare,SA", "via": true}
ดูข้อมูลเพิ่มเติมเกี่ยวกับจุดแวะพักกลางทางได้ที่ระบุจุดแวะพักกลางทางตรวจสอบว่าไม่ได้ตั้งค่า
routing_preference
เป็นTRAFFIC_AWARE_OPTIMAL
ตั้งค่า
optimize_waypoint_order
เป็นtrue
เช่น"optimizeWaypointOrder": "true",
ระบุช่อง
routes.optimizedIntermediateWaypointIndex
ในช่องหน้ากาก ดังนี้REST
-H X-Goog-FieldMask: routes.optimizedIntermediateWaypointIndex
RPC
const (fieldMask = "routes.optimizedIntermediateWaypointIndex")
ทําความเข้าใจวิธีเพิ่มประสิทธิภาพลําดับของจุดแวะพัก
Routes API จะเพิ่มประสิทธิภาพลําดับของจุดแวะพักในเส้นทางดังนี้
จัดทําดัชนีจุดแวะพักโดยอัตโนมัติตามลําดับที่คุณระบุไว้ในคําขอ โดยเริ่มจาก 0
เพิ่มประสิทธิภาพลําดับของจุดแวะพักโดยใช้หมายเลขดัชนีที่กําหนดให้กับจุดแวะพักในคําขอ
แสดงผลลำดับของจุดอ้างอิงที่เพิ่มประสิทธิภาพในออบเจ็กต์
routes
ในช่องwaypoint_order
ภายใต้routes.optimizedIntermediateWaypointIndex
ตัวอย่าง
คำขอนี้ขอให้เพิ่มประสิทธิภาพเส้นทางจากแอดิเลด รัฐเซาท์ออสเตรเลีย ไปยังภูมิภาคไวน์หลักแต่ละแห่งของรัฐเซาท์ออสเตรเลีย แล้วกลับไปยังแอดิเลด
curl -X POST -H 'content-type: application/json' -d ' { "origin": { "address": "Adelaide,SA" }, "destination": { "address": "Adelaide,SA" }, "intermediates": [ {"address": "Barossa+Valley,SA"}, {"address": "Clare,SA"}, {"address": "Coonawarra,SA"}, {"address": "McLaren+Vale,SA"} ], "travelMode": "DRIVE", "optimizeWaypointOrder": "true" }' \ -H 'Content-Type: application/json' \ -H 'X-Goog-Api-Key: YOUR_API_KEY' \ -H 'X-Goog-FieldMask: routes,geocodingResults.intermediates.intermediateWaypointRequestIndex' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
Routes API จะจัดทำดัชนีจุดอ้างอิงระหว่างกลางที่ระบุในคำขอ โดยเริ่มต้นที่ 0 เช่น
0 {"address": "Barossa+Valley,SA"}, 1 {"address": "Clare,SA"}, 2 {"address": "Coonawarrav,SA"}, 3 {"address": "McLaren+Vale,SA"}
บริการจะแสดงผลลัพธ์ที่เพิ่มประสิทธิภาพโดยใช้หมายเลขดัชนีของจุดแวะพัก 4 จุดที่ระบุในคำขอ ดังนี้
"optimizedIntermediateWaypointIndex": [ 3, 2, 0, 1 ]