بشكل افتراضي، تُستخدم نقاط الطريق الوسيطة لإيقاف عمليات الاستلام وعمليات الانسحاب، ولكن يمكنك أيضًا تحديد أن النقطة الوسيطة الوسيطة تعني فقط أن يمر بها.
مسار يحتوي على نقطة طريق نقطة انطلاق، ووسيط عبور
والنقطة الفارقة الوجهة تحتوي على ساق مسار واحد فقط
يربط بين المنشأ والوجهة، بينما يمر عبر الوسط
(تسمى نقطة الطريق via
).
إعداد نقطة طريق وسيطة لتكون نقطة طريق للمرور من خلال
إعداد الخاصية via
من النقطة الوسيطة على true
باستخدام أي
نقطة الطريق (REST) أو
Waypoint (gRPC).
تكون السمة via
أكثر فعالية عند إنشاء مسارات استجابةً لـ
المستخدم يسحب نقاط الطريق على الخريطة. القيام بذلك يسمح للمستخدم بمعرفة كيف
قد يبدو المسار النهائي في الوقت الفعلي ويساعد على ضمان وضع نقاط الطريق
في المواقع التي يمكن الوصول إليها من خلال "مسارات الحوسبة".
يوضح المثال التالي كيفية وضع علامة على نقطة طريق وسيطة نقطة المرور هذه.
{ "location": { "latLng": { "latitude":37.419734, "longitude":-122.0827784 } }, "via": true }
الوصول إلى أرقام تعريف الأماكن للنقاط الوسيطة المتوسطة
في حال تحديد الموقع الجغرافي لنقطة انطلاق أو وجهة أو نقطة طريق وسيطة
على أنّها سلسلة عنوان أو كرمز Plus Codes، تحاول واجهة برمجة التطبيقات العثور على
الموقع الأكثر صلة والذي له رقم تعريف مكان مطابق. تشير رسالة الأشكال البيانية
geocodingResults.intermediates
تحتوي المصفوفة في النتائج على رقم تعريف المكان المقابل لموقع
ونقاط الطريق، إلى جانب بيانات إضافية حول الموقع.
لكل عنصر في مصفوفة intermediates
، استخدِم دالة
السمة intermediateWaypointRequestIndex
لتحديد المقياس الوسيط
والنقطة الوسيطة في الطلب مع معرف المكان في الرد.
على سبيل المثال:
يمكنك تحديد ثلاث نقاط طريق وسيطة في الطلب. اثنان من هذين يتم تحديد نقاط الطرق من خلال سلاسل العناوين وواحدة حسب خط العرض/خط الطول الإحداثيات.
يمكنك تضمين
geocodingResults
في قناع حقل الردّ لتحديد لعرض الصفيفةgeocodingResults
في النتائج.
curl -X POST -d '{ "origin":{ "address": "1600 Amphitheatre Parkway, Mountain View, CA" }, "destination":{ "address": "24 Willie Mays Plaza, San Francisco, CA 94107" }, "intermediates": [ { "address": "450 Serra Mall, Stanford, CA 94305, USA" }, { "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0807784 } } }, { "address": "1836 El Camino Real, Redwood City, CA 94063" } ], "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,geocodingResults' 'https://routes.googleapis.com/directions/v2:computeRoutes'
يتضمن الردّ مصفوفة geocodingResults
التي تحتوي على رقم تعريف المكان الخاص
الأصل، والوجهة، واثنين من نقاط الطريق الثلاثة. وهي
نقاط الطرق في الفهرس 0 و2 للطلب. لأن النقطة الوسيطة في الفهرس 1
قد تم تحديد الطلب باستخدام إحداثيات خط العرض/خط الطول، فمن
تم حذفها من المصفوفة geocodingResults
في الرد.
{ "routes": [{...}], "geocodingResults": { "origin": { "geocoderStatus": {}, "type": [ "premise" ], "placeId": "ChIJj38IfwK6j4ARNcyPDnEGa9g" }, "destination": { "geocoderStatus": {}, "type": [ "premise" ], "placeId": "ChIJI7ES6tl_j4ARVpDZoXbWAiY" }, "intermediates": [ { "geocoderStatus": {}, "intermediateWaypointRequestIndex": 0, "type": [ "street_address" ], "placeId": "ChIJvdLMGyq7j4ARScE5tWX_C0Y" }, { "geocoderStatus": {}, "intermediateWaypointRequestIndex": 2, "type": [ "premise" ], "placeId": "ChIJkTc0GKajj4AR9UMsOSHwGD0" } ] } }