חישוב סיכום הניתוב
כדי להשתמש בחיפוש טקסט (חדש) או בחיפוש בסביבה (חדש) כדי לחשב את משך הנסיעה והמרחק לכל מקום בתשובה:
-
מעבירים את הפרמטר
routingParameters.origin
בבקשה כדי לציין את קואורדינטות קו הרוחב וקו האורך של נקודת המוצא של הניתוב. הפרמטר הזה נדרש כדי לחשב את משך הזמן והמרחק לכל מקום בתגובה. -
כוללים את
routingSummaries
במסכת השדות כדי שהתשובה תכלול את המערךroutingSummaries
. המערך הזה מכיל את משך הזמן והמרחק מנקודת המוצא של הניתוב לכל מקום בתגובה.
APIs Explorer מאפשר לכם לשלוח בקשות בזמן אמת כדי להכיר את ה-API ואת האפשרויות שלו:
שימוש בחיפוש בטקסט (חדש)
בדוגמה הבאה, מחשבים את משך הנסיעה ואת המרחק לכל מקום בתשובה של חיפוש טקסט (חדש):
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia", "routingParameters": { "origin": { "latitude": -33.8688, "longitude": 151.1957362 } } }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,routingSummaries' \ 'https://places.googleapis.com/v1/places:searchText'
התגובה מכילה שני מערכים של JSON: המערך places
מכיל את המקומות התואמים, והמערך routingSummaries
מכיל את משך הזמן והמרחק שצריך לעבור כדי להגיע לכל מקום:
{ "places": [ { object (Place) } ] "routingSummaries": [ { object (RoutingSummary) } }
כל רכיב במערך routingSummaries
נמצא במיקום התואם במערך places
. כלומר, הרכיב ב-routingSummaries[0]
תואם למקום ב-places[0]
.
אורך המערך של routingSummaries
זהה לאורך המערך של places
. אם הערך routingSummary
של מקום מסוים לא זמין, הרשומה במערך תהיה ריקה.
בדוגמה הזו, החישוב של משך הזמן והמרחק מתבצע מנקודת המוצא של הניתוב לכל מקום, ולכן השדה routingSummaries.legs
בתגובה מכיל אובייקט Leg
יחיד שמכיל את הערכים duration
ו-distanceMeters
מנקודת המוצא של הניתוב למקום.
{ "places": [ { "formattedAddress": "1, Westfield Sydney Central Plaza, 450 George St, Sydney NSW 2000, Australia", "displayName": { "text": "Gözleme King Sydney", "languageCode": "en" } }, { "formattedAddress": "367 Pitt St, Sydney NSW 2000, Australia", "priceLevel": "PRICE_LEVEL_MODERATE", "displayName": { "text": "Mother Chu's Vegetarian Kitchen", "languageCode": "en" } }, … ] "routingSummaries": [ { "legs": [ { "duration": "597s", "distanceMeters": 2607 } ], "directionsUri": "https://www.google.com/maps/dir/-33.8688,151.1957362/''/data=!4m6!4m5!1m0!1m2!1m1!1s0x6b12ae3fa97cd745:0x6aecf365bf497c08!3e0" }, { "legs": [ { "duration": "562s", "distanceMeters": 2345 } ], "directionsUri": "https://www.google.com/maps/dir/-33.8688,151.1957362/''/data=!4m6!4m5!1m0!1m2!1m1!1s0x6b12ae3da97f60c1:0x845f3273bd764f6c!3e0" }, … ] }
מהדוגמה הזו אפשר לראות שהמשך והמרחק מנקודת המוצא של הניתוב למקום הראשון בתוצאות הם 597 שניות ו-2, 607 מטרים.
שימוש בחיפוש בקרבת מקום
בדוגמה הזו, אתם מחשבים את משך הנסיעה ואת המרחק לכל מקום בתגובה של Nearby Search. בדוגמה הזו מחפשים מסעדות בסידני, אוסטרליה, ומגדירים את הגבלת המיקום ואת נקודת המוצא של הניתוב לאותן קואורדינטות של קווי רוחב ואורך:
curl -X POST -d '{ "includedTypes": ["restaurant"], "maxResultCount": 10, "locationRestriction": { "circle": { "center": { "latitude": -33.8688, "longitude": 151.1957362}, "radius": 500.0 } }, "routingParameters": { "origin": { "latitude": -33.8688, "longitude": 151.1957362 } } }' \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key:API_KEY" \ -H "X-Goog-FieldMask: places.displayName,routingSummaries" \ https://places.googleapis.com/v1/places:searchNearby
לא חייבים להשתמש באותן קואורדינטות בשביל locationRestriction
ובשביל
נקודת המוצא של המסלול. לדוגמה, אם תגדירו את locationRestriction
לנקודת המרכז של סידני, תוצאות החיפוש יתמקדו בעיגול הזה. אבל אחר כך הגדרתם את נקודת המוצא של המסלול לקואורדינטות של הבית שלכם, כלומר למיקום אחר בתוך עיגול החיפוש. הבקשה משפיעה על תוצאות החיפוש כך שיוצגו רק תוצאות שקשורות לעיגול, ומחשבת את סיכומי המסלולים על סמך המיקום של הבית שלכם.
ציון אפשרויות נסיעה
כברירת מחדל, החישובים של משך הנסיעה והמרחק הם לרכב. עם זאת, אתם יכולים לשלוט בסוג הרכב, וגם באפשרויות אחרות, בחיפוש.
-
משתמשים בפרמטר
routingParameters.travelMode
כדי להגדיר את אמצעי התחבורה ל-DRIVE
,BICYCLE
,WALK
אוTWO_WHEELER
. מידע נוסף על האפשרויות האלה זמין במאמר סוגי רכבים שזמינים לשימוש במסלולים. -
משתמשים במאפיין
routingParameters.routingPreference
כדי להגדיר את אפשרות העדיפות של הניתוב ל-TRAFFIC_UNAWARE
(ברירת מחדל), ל-TRAFFIC_AWARE
או ל-TRAFFIC_AWARE_OPTIMAL
. לכל אפשרות יש רמות שונות של איכות נתונים וזמן אחזור. מידע נוסף זמין במאמר בנושא הגדרת הכללה של נתוני תנועה.המאפיין
routingParameters.routingPreference
משפיע על ההוראות שמופיעות בשדהdirectionsUri
תצוגה מקדימה (לפני השקת GA), כי מפות Google מציגה אפשרויות תנועה כשהיא פותחת את הקישור. -
משתמשים במאפיין
routingParameters.routeModifiers
כדי לציין את הערכיםavoidTolls
,avoidHighways
,avoidFerries
ו-avoidIndoor
. מידע נוסף על האפשרויות האלה זמין במאמר הגדרת תכונות של מסלול כדי להימנע מהן.
בדוגמה הבאה, מציינים את מצב הנסיעה כ-DRIVE
ומוסיפים את האפשרות להימנע מכבישים מהירים:
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia", "routingParameters": { "origin": { "latitude": -33.8688, "longitude": 151.1957362 }, "travelMode":"DRIVE", "routeModifiers": { "avoidHighways": true } } }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \ -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,routingSummaries' \ 'https://places.googleapis.com/v1/places:searchText'
רוצה לנסות?
באמצעות APIs Explorer אפשר לשלוח בקשות לדוגמה כדי להכיר את ה-API ואת האפשרויות שלו.
לוחצים על סמל ה-API api בצד שמאל של הדף.
אפשר לערוך את פרמטרים הבקשה.
לוחצים על הלחצן Execute (הפעלה). בתיבת הדו-שיח, בוחרים את החשבון שרוצים להשתמש בו כדי לשלוח את הבקשה.
בחלונית APIs Explorer, בוחרים בסמל המסך המלא מסך מלא כדי להרחיב את החלון של APIs Explorer.