تعرض واجهة Routes API Compute Routes
تلقائيًا
مسار عبر محطات متعددة، تُسمى نقاط طريق التوقف، في
بالترتيب الذي تقدمه لهم.
يمكنك السماح لواجهة Routes API بتحسين المسار المقدم عن طريق إعادة ترتيب تتوقف عند ترتيب أكثر كفاءة. يؤدي تحسين نقاط الطريق إلى تحسين السفر الوقت ولكنها تراعي أيضًا عوامل أخرى مثل المسافة وعدد الانعطاف عند تحديد المسار الأكثر كفاءة.
لتحسين نقاط الطريق
تأكد من عدم ضبط أي من نقاط الطريق في المسار على
via
فيtrue
مثال:{"address": "Clare,SA", "via": true}
لمزيد من المعلومات عن نقاط الطريق الوسيطة، انظر تحديد نقاط الطريق الوسيطة.تأكَّد من عدم ضبط
routing_preference
علىTRAFFIC_AWARE_OPTIMAL
.اضبط السمة
optimize_waypoint_order
علىtrue
. على سبيل المثال:"optimizeWaypointOrder": "true",
حدِّد الحقل
routes.optimizedIntermediateWaypointIndex
في الحقل. قناع:وقت الاستراحة
-H X-Goog-FieldMask: routes.optimizedIntermediateWaypointIndex
متوسط عائد النقرة
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": "Connawarra,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.optimizedIntermediateWaypointIndex' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
تفهرس Routes API نقاط الطرق الوسيطة المتوفرة في طلبك، بدءًا من 0. على سبيل المثال:
0 {"address": "Barossa+Valley,SA"}, 1 {"address": "Clare,SA"}, 2 {"address": "Connawarra,SA"}, 3 {"address": "McLaren+Vale,SA"}
باستخدام أرقام الفهرس لنقاط الطريق الأربع المقدمة في الطلب، ثم تُرجع الخدمة الطلب المحسن:
"optimizedIntermediateWaypointIndex": [ 3, 2, 0, 1 ]