রাউটিংয়ের সারসংক্ষেপ গণনা করা
উত্তরে প্রতিটি জায়গায় পৌঁছাতে কত সময় লাগবে এবং দূরত্ব কত তা গণনা করতে Text Search (New) বা Nearby Search (New) ব্যবহার করতে:
-
রাউটিংয়ের উৎসের অক্ষাংশ ও দ্রাঘিমাংশ স্থানাঙ্ক নির্দিষ্ট করতে, অনুরোধে
routingParameters.originপ্যারামিটার পাস করুন। উত্তর ডেটার মধ্যে প্রতিটি জায়গার দূরত্ব ও সময় গণনা করার জন্য এই প্যারামিটার প্রয়োজনীয়। -
ফিল্ড মাস্কে
routingSummariesযোগ করুন যাতে উত্তরেroutingSummariesঅ্যারে থাকে। এই অ্যারেতে রাউটিংয়ের উৎস থেকে উত্তরের প্রতিটি জায়গার দূরত্ব ও সময় থাকে।
API এক্সপ্লোরার আপনাকে লাইভ অনুরোধ করতে দেয় যাতে আপনি API ও 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" }, … ] }
এই উদাহরণ থেকে আপনি দেখতে পাবেন যে রুট শুরুর স্থান থেকে ফলাফলের প্রথম স্থানের সময়কাল এবং দূরত্ব হল ৫৯৭ সেকেন্ড এবং ২৬০৭ মিটার।
নিয়ারবাই সার্চ ব্যবহার করা
এই উদাহরণে, আপনি 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প্রপার্টি প্রিভিউ (Pre-GA)directionsUriফিল্ডে থাকা দিকনির্দেশকে প্রভাবিত করে কারণ Google Maps লিঙ্ক খোলার সময় ট্রাফিক সংক্রান্ত বিকল্প দেখায়। -
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'এটি ব্যবহার করে দেখুন!
API এক্সপ্লোরার আপনাকে স্যাম্পেল অনুরোধ করতে দেয় যাতে আপনি API ও API বিকল্পগুলির সাথে পরিচিত হতে পারেন।
পৃষ্ঠার ডানদিকে API আইকন api বেছে নিন।
ঐচ্ছিকভাবে, অনুরোধের প্যারামিটার এডিট করুন।
এক্সিকিউট করুন বোতামটি বেছে নিন। ডায়ালগে, অনুরোধ করার জন্য আপনি যে অ্যাকাউন্ট ব্যবহার করতে চান সেটি বেছে নিন।
API এক্সপ্লোরার প্যানেলে, API এক্সপ্লোরার উইন্ডো বড় করতে, 'ফুলস্ক্রিন' আইকন ফুলস্ক্রিন বেছে নিন।