রুট গণনা (রুট পরিবর্তন সহ) এমন রুট দেখায় যা নেভিগেট করতে সবচেয়ে কম সময় নেয় এবং এটি ডিফল্ট সেরা রুট হিসেবে দেখানো হয়। তবে আপনি রাউটিং স্ট্র্যাটেজি পরিবর্তন করতে পারেন যাতে পরিবর্তে বিকল্প রুটের মধ্যে যেটি ছোট সেটি দেখানো হয়।
ছোট বলতে বোঝায় যে আমাদের ডিফল্ট খরচ মডেলের উপর ভিত্তি করে সবচেয়ে ভালো রুটের মধ্যে যেটি সবচেয়ে ছোট। ছোট রুটটি হয়ত একেবারে সবচেয়ে ছোট রুট নয়, কারণ সেই বিকল্পটি হয়ত একটি খারাপ বিকল্প। যেমন, যদি সবচেয়ে ছোট রুট ১০ কিমি হয় এবং নেভিগেট করতে ৫০ মিনিট সময় লাগে এবং অন্য একটি রুট ১৫ কিমি হয়, কিন্তু নেভিগেট করতে মাত্র ২০ মিনিট সময় লাগে, তাহলে দ্বিতীয় বিকল্পটি বেছে নেওয়া উচিত, কারণ ৫ কিমি কমানোর জন্য ৩০ মিনিট বেশি সময় ব্যয় করা বুদ্ধিমানের কাজ নয়।
আপনি কোনও ট্রিপের জন্য রাউটিং স্ট্র্যাটেজি সেট করলে, ট্রিপ সম্পূর্ণ না হওয়া পর্যন্ত এটি পরিবর্তন হবে না। আগে থেকে থাকা ট্রিপের জন্য রাউটিং স্ট্র্যাটেজি পরিবর্তন করতে, আপনাকে অবশ্যই গন্তব্যগুলি মুছে ফেলতে হবে এবং নতুন রাউটিং স্ট্র্যাটেজির সাথে সেগুলি আবার রিসেট করতে হবে।
রাউটিং স্ট্র্যাটেজি সেট করা হচ্ছে
আপনি setDestinations() কল করার সময় RoutingOptions.routingStrategy সেট করে
রাউটিং স্ট্র্যাটেজি কনফিগার করতে পারবেন।
RoutingOptions.routingStrategy নিম্নলিখিত গণনা সংক্রান্ত ভ্যালুর মধ্যে
একটি নেয়:
| গুনতির ভ্যালু | বিবরণ |
|---|---|
| RoutingStrategy.DEFAULT_BEST | Navigation SDK-এর ডিফল্ট কস্ট মডেল অনুযায়ী রুট র্যাঙ্ক করে। এটি হল ডিফল্ট রাউটিং স্ট্র্যাটেজি। |
| RoutingStrategy.SHORTER | দূরত্ব অনুযায়ী রুট র্যাঙ্ক করে। সবচেয়ে বেশি র্যাঙ্কিং পাওয়া রুটটি হল সবচেয়ে ছোট রুট। |
উদাহরণ
নিম্নলিখিত কোডের উদাহরণ থেকে বোঝা যায় যে কীভাবে ছোট রুটের পছন্দ সেট করতে হয়।
RoutingOptions routingOptions = new RoutingOptions();
routingOptions.routingStrategy(RoutingStrategy.SHORTER);
navigator.setDestinations(destinations, routingOptions, displayOptions);
ফেরি অন্তর্ভুক্ত আছে এমন রুট
ডিফল্ট হিসেবে, NavSDK ফেরি অন্তর্ভুক্ত থাকা রুট বাদ দেয়। আপনি
যদি আপনার রুটের অংশ হিসেবে ফেরি বিকল্প অন্তর্ভুক্ত করতে চান, তাহলে আপনি
avoidFerries থেকে false-এ সেট করে ফেরি সেগমেন্টে ট্রিপ দেখানোর জন্য
এই রাউটিং পছন্দ অ্যাডজাস্ট করতে পারেন।
উদাহরণ
RoutingOptions routingOptions = new RoutingOptions().avoidFerries(true);
// Add additional routing preferences
navigator.setDestination(destination, routingOptions);
রুট কল-আউট ফর্ম্যাট
ছোট রুটের পছন্দ অনুযায়ী, রুটের পাশে কলআউট দূরত্বের বিবরণ দেখায়। তবে, আপনি এর পরিবর্তে ETA কলআউট ব্যবহার করতে পারবেন।
রুট কলআউট ফর্ম্যাট কনফিগার করা হচ্ছে
আপনি NavigationView (বা NavigationFragment)-এ setRouteCalloutInfoFormat
কল করে রুট কলআউট ফর্ম্যাট পরিবর্তন করতে পারবেন। setRouteCalloutInfoFormat
নিম্নলিখিত গণনা ভ্যালুর মধ্যে একটি নেয়:
| গুনতির ভ্যালু | বিবরণ |
|---|---|
| RouteCalloutInfoFormat.DEFAULT | ডিফল্ট সেরা রুট রাউটিং স্ট্র্যাটেজি ব্যবহার করার সময় বাকি থাকা সময় দেখায়। ছোট রুট রাউটিং স্ট্র্যাটেজি ব্যবহার করার সময় বাকি থাকা দূরত্ব দেখায়। |
| RouteCalloutInfoFormat.TIME | বাকি থাকা সময় দেখায়। |
| RouteCalloutInfoFormat.DISTANCE | বাকি দূরত্ব দেখায়। |
উদাহরণ
নিম্নলিখিত কোডের উদাহরণ থেকে বোঝা যায় যে কীভাবে রুট কলআউট ফর্ম্যাট কনফিগার করতে হয়।
mNavFragment.setRouteCalloutInfoFormat(RouteCalloutInfoFormat.TIME);