יש שתי דרכים להגדיר עצירה לאורך מסלול, למשל לאיסוף או למשלוח:
- הוספת נקודת ביניים: זו אפשרות ברירת המחדל. מוסיפים נקודת ביניים בין נקודת המוצא ליעד במערך
intermediates. מנוע ניתוב הדרכים מצמיד את נקודת הביניים לכביש הקרוב ביותר שאפשר לנווט בו, ומחלק את המסלול ל-RouteLegמקטעים שמחוברים על ידי התחנה הזו. - מציינים vehicleStopover: אם רוצים שמנוע תכנון המסלולים יבצע ניתוח נוסף כדי להימנע ממקטעי דרך שלא מתאימים לעצירה – כמו כבישים מהירים, מנהרות או גשרים – מגדירים את
vehicleStopover: trueבציון דרך.
הוספת נקודת ציון ביניים
כדי להגדיר עצירה לאורך מסלול, מוסיפים נקודת ציון ביניים למערך intermediates בבקשה.
להוספת נקודת ביניים יש את ההשפעות הבאות:
- המסלול מחולק ל
RouteLegקטעים: כל קטע מחבר בין תחנה אחת לתחנה הבאה. - הקואורדינטה נצמדת לכביש: מנוע הניתוב מצמיד את קואורדינטות קו הרוחב וקו האורך שלכם, שיכול להיות שהן נמצאות על גג או בחצר, למקטע הכביש הקרוב ביותר שאפשר לנווט בו.
במקרה של הרבה כבישים מקומיים, הצמדה לכביש הקרוב ביותר מספקת מיקום עצירה פרקטי. עם זאת, הצמדה לא קובעת אם קטע הכביש הזה מתאים לעצירה בצד הדרך, למשל אם הכביש הקרוב ביותר הוא כביש מהיר או מנהרה.
דוגמה: הוספת נקודת ציון ביניים
בדוגמה הבאה מוצג איך להגדיר עצירה לאורך מסלול על ידי הוספת נקודת ביניים בבקשת 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'
מידע נוסף על נקודות ציון ביניים וקטעי מסלול זמין במאמר בנושא הגדרת נקודות ציון ביניים.
ציון של vehicleStopover לצורך התאמה לאיסוף ולמסירה
כשמוסיפים נקודת ביניים רגילה, היא מוצמדת לכביש הקרוב ביותר, אבל הכביש הזה לא תמיד מתאים לעצירה של רכב. אם רוצים שמנוע הניתוב יבצע ניתוח נוסף כדי להעריך את ההתאמה של הכביש לאיסוף או להורדה, צריך להגדיר את vehicleStopover: true בנקודת הדרך.
כשמגדירים את vehicleStopover: true, מנוע הניתוב מעריך קטעי כביש פוטנציאליים ומנסה להימנע מכבישים שלא מתאימים לעצירה, כמו כבישים מהירים, מנהרות ומעברים עיליים.
לדוגמה, נניח שאתם נמצאים במיקום שבו כביש עירוני עובר ישירות מעל כביש מהיר בתוך מנהרה: * נקודת ציון רגילה: אם היא קרובה יותר מבחינה גיאומטרית לקואורדינטה שלכם, היא תתמקם על הכביש המהיר או על המנהרה שמתחת. * עצירה זמנית ברכב: מתבצע ניתוח נוסף כדי לעקוף את הכביש המהיר ואת המנהרה, והעצירה ממוקמת בכביש עירוני שמתאים לעצירה בצד הדרך.
דוגמה: ציון של vehicleStopover בציון דרך
בדוגמה הבאה מוצג אופן ההגדרה של vehicleStopover: true בנקודת ביניים בבקשת POST מלאה:
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'
מידע נוסף על סוגי נקודות ציון ואפשרויות זמין במאמר סוגי נקודות ציון ואפשרויות.