כשמפעילים את האפשרות 'מסלולים קצרים יותר', ה-Routes API יכול להציג מסלולי נסיעה שעברו אופטימיזציה למרחק נסיעה קצר יותר.
כשמבקשים מסלול קצר יותר, השירות מחזיר את הפרטים הבאים:
- מסלול ברירת המחדל, שהוא מסלול שעובר אופטימיזציה בעיקר לצורך הצגת זמן הגעה משוער.
- מסלול קצר יותר שהוצע לכם לאחר אופטימיזציה כדי לצמצם את מרחק הנסיעה בכל המסלול.
מה זה ומה היתרונות של השימוש בו
במסלול קצר יותר, המערכת נותנת עדיפות למרחק על פני נוחות הנסיעה או המהירות. לדוגמה, יכול להיות שהיא תעדיף כבישים מקומיים במקום כבישים מהירים, דרכים עפר או נסיעה דרך חניונים. המערכת לא מחזירה תמונות של פעולות שמערכת מפות Google יודעת שהן לא חוקיות.
בקשה למסלול קצר יותר
הבקשה שלכם צריכה לעמוד בקריטריונים הבאים:
- מגדירים את
travelMode
לערךDRIVE
,BICYCLE
אוTWO_WHEELER
. - מגדירים את
requestedReferenceRoutes
להיותSHORTER_DISTANCE
. - מגדירים מסכה של שדה תגובה כדי להחזיר את מאפייני התגובה שמשויכים למסלול קצר יותר:
routes.routeLabels
: מזהה כל מסלול בתורDEFAULT_ROUTE
,SHORTER_DISTANCE
אוDEFAULT_ROUTE_ALTERNATE
.routes.routeToken
: אסימון מסלול שאפשר להעביר ל-Navigation SDK כדי לאחזר מסלול בהתאמה אישית.
- אין לכלול נקודות
Via
ביניים. - לא כוללים את הפרמטר
optimizeWaypointOrder
. - אופציונלי: מגדירים מסכה של שדה התגובה כדי להחזיר את המאפיינים הבאים שמשויכים גם לנתיב ברירת המחדל וגם לנתיב הקצר יותר:
routes.distanceMeters
: הפונקציה מחזירה את המרחק של המסלול.routes.duration
: הפונקציה מחזירה את משך המסלול.
למידע נוסף, ראו ReferenceRoute ו-RouteLabel.
דוגמה לבקשה: מסלול קצר יותר
הקוד הבא מציג בקשה לנתיב קצר יותר. בדוגמה הזו, משתמשים במסכת השדה של התגובה כדי להחזיר שדות שמשויכים גם למסלול ברירת המחדל וגם למסלול הקצר יותר באמצעות מסכות השדות הבאות:
routes.distanceMeters
routes.duration
curl -X POST -H 'content-type: application/json' -d '{ "origin": { "location": { "latLng": { "latitude": 41.76904801292959, "longitude": -72.67374935684933 } } }, "destination": { "location": { "latLng": { "latitude": 41.823042361105024, "longitude": -71.40933143059424 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE", "requestedReferenceRoutes": ["SHORTER_DISTANCE"], }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY \ -H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
דוגמה לתגובה עם מסלול קצר יותר
{
"routes": [
{
"distanceMeters": 138943,
"duration": "5373s",
"routeToken": "CrsCCs4BMssBGq8BCkECFg9eN0MowaEI3Y4KqMEhzOTe-Qi3947kBsb8koUBkvX0oAKJ_b1S4uPoUvzzAYfXA92t_RXyw98Up6qKAaRaABIsNBjodKMdkMYAPMLMIajCwj-zsIxpgyBxOLYjdBBeKgkO3tFDDrj4YgZB5bMaFQAATME12CCCA9MEF-kO2wL_____DyoLHgAOAHN3DggAQQEyBAUBAQM9VDgqPkV88FI_SNO81oLq4JnjYyIXcklWWFo2cjhDZmltdk9NUDQ3aU1nUU0QBRpPCk0KGAoNCgIIAREAAAAAAIBmQBF56SYxqDm4QBISCAAQAxAGEBMQEhgCQgQaAggFIhsKF3JJVlhaLWFOQnZpbXZPTVA0N2lNZ1FNcAEoASIVAACBmRY1BjeCiUQewJGTrQ3DuHRp",
"routeLabels": [
"DEFAULT_ROUTE"
]
},
{
"distanceMeters": 112610,
"duration": "7165s",
"routeToken": "CqgCCrsBMrgBGpwBCjYCFg1SN0MowaEI3Y4KjfqjF6Ls9BXc-QGiqCOpu7FDtfCXxSG2zLOGI_r4uQGc-we_nQ7MLAASLDQY6HSjHZDGg26EAFrPI5Q3NxvGA4ELazy3sLYqno_9eAFD2KxlCqAGQeWzGg4AAMQDGwyiAqwwKQggJCoLHgBsCQ8Acm0XWWcyAgQGPVQ4Kj5FfPBSP0jikPWC95WdhIwBIhdySVZYWjZHR0RiTzV2T01QOUpiQXlBTRAFGk8KTQoYCg0KAggCEQAAAAAAAFlAEU5iEFh5af1AEhIIABADEAYQExASGAJCBBoCCAUiGwoXcklWWFo3S09Cck81dk9NUDlKYkF5QU1wASgCIhUAAIGZFlj_CmMgGE6KGZcsE-tEywM",
"routeLabels": [
"SHORTER_DISTANCE"
]
}
]
}
דוגמה לבקשה: מסלול קצר יותר וחסכוני בדלק
הקוד הבא מציג בקשה למסלול קצר יותר ולמסלול חסכוני בדלק.
`
curl -X POST -d '{ "origin": { "location": { "latLng": { "latitude": 41.76904801292959, "longitude": -72.67374935684933 } } }, "destination": { "location": { "latLng": { "latitude": 41.823042361105024, "longitude": -71.40933143059424 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE_OPTIMAL", "requestedReferenceRoutes": ["SHORTER_DISTANCE", "FUEL_EFFICIENT"] }'
-H 'Content-Type: application/json'
-H 'X-Goog-Api-Key: YOUR_API_KEY'
-H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken'
'https://routes.googleapis.com/directions/v2:computeRoutes'
דוגמה לתגובה: מסלול קצר יותר וחסכוני בדלק
במקרה כזה, המרחק הקצר יותר והמסלול החסכוני ביותר בדלק זהים, ולכן המסלול הזה יוחזר והערך של routeLabel
יכלול את שני סוגי המסלולים.
{ "routes": [ { "distanceMeters": 138943, "duration": "5375s", "routeToken": "Cr8CCs4BMssBGq8BCkECFg9eN0MowaEI3Y4KqMEhzOTe-Qi3947kBsb8koUBkvX0oAKJ_b1S4uPoUvzzAYfXA92t_RXyw98Up6qKAaRaABIsNBjodKMdkMYAPMLMIajCwj-zsIxpgyBxOLYjdBBeKgkO3tFDDrj4YgZB5bMaFQAATME12CCCA9MEF-kO2wL_____DyoLHgAOAHN3DggAQQEyBAUBAQM9VDgqPkV88FI_SNO81oLq4JnjYyIXS1laWFo4T19JcWVCM2ZFUDFMbms4UXcQBRpTClEKGAoNCgIIAREAAAAAAIBmQBFOYhBYGTy4QBIWCAAQAxAGEBMQEhgCQgQaAggFSgIIASIbChdLWVpYWjlpV0g2ZUIzZkVQMUxuazhRd3ABKAEiFQAAgZkW4Df4cspNNJZWlMZuUUxLPQ", "routeLabels": [ "DEFAULT_ROUTE" ] }, { "distanceMeters": 112610, "duration": "7156s", "routeToken": "CqwCCrsBMrgBGpwBCjYCFg1SN0MowaEI3Y4KjfqjF6Ls9BXc-QGiqCOpu7FDtfCXxSG2zLOGI_r4uQGc-we_nQ7MLAASLDQY6HSjHZDGg26EAFrPI5Q3NxvGA4ELazy3sLYqno_9eAFD2KxlCqAGQeWzGg4AAMQDGwyiAqwwKQggJCoLHgBsCQ8Acm0XWWcyAgQGPVQ4Kj5FfPBSP0jikPWC95WdhIwBIhdLWVpYWi1UNklfT055OVlQczhhcWlRSRAFGlMKUQoYCg0KAggCEQAAAAAAAFlAEU5iEFh5af1AEhYIABADEAYQExASGAJCBBoCCAVKAggBIhsKF0tZWlhaNERXSF9PTnk5WVBzOGFxaVFJcAEoAiIVAACBmRaESp2EJS5nmwiEF8KH15_f", "routeLabels": [ "FUEL_EFFICIENT", "SHORTER_DISTANCE" ] } ] }
אזורים נתמכים
מסלולים למרחקים קצרים יותר נתמכים בכל האזורים.
חיוב
אין תשלום נוסף על השימוש בתכונה ניסיונית בפלטפורמה של מפות Google. החיוב יתבצע על סמך השימוש שלכם ב-API, על סמך פרמטרים אחרים שתגדירו.
מידע נוסף על חיוב ב-Routes API