
به طور پیشفرض، کیت توسعه نرمافزار ناوبری اندروید (Navigation SDK) سریعترین مسیر را به یک نقطه بینراهی پیدا میکند، اما این تضمین نمیکند که وسیله نقلیه به سمت جادهای که کاربر منتظر آن است برسد یا محل رسیدن برای توقف راننده امن باشد. این راهنما دو ویژگی را که میتوانید برای این موقعیتها استفاده کنید، شرح میدهد:
- ترجیح مسیریابی در کنار جاده
- ویژگی توقفگاه
ترجیح مسیریابی سمت مسیر
هنگام ایجاد یک نقطه مسیر برای توقف، میتوانید اولویت رسیدن به یک سمت خاص از جاده را تعیین کنید. میتوانید این اولویت را به یکی از دو روش زیر مشخص کنید: ترجیح دادن همان سمت جاده، یا ارائه یک عنوان برای رسیدن.
همان سمت جاده را ترجیح میدهم
شما مختصات جغرافیایی نقطهی مسیر را ارائه میدهید و سپس یک پرچم ( setPreferSameSideOfRoad ) تنظیم میکنید که نشان میدهد ترجیح میدهید در همان سمت جاده که نقطهی مسیر قرار دارد، برسید - که به نزدیکترین پیادهرو متصل میشود.
Waypoint waypoint =
Waypoint.builder()
.setLatLng(latitude, longitude)
.setTitle("Somewhere in Sydney")
.setPreferSameSideOfRoad(true)
.build()
تنظیم عنوان ورود
شما مختصات جغرافیایی نقطهی مسیر را ارائه میدهید، و سپس یک عنوان ورود ( setPreferredHeading ) ارائه میدهید که با جهت جریان ترافیک در همان سمت جاده که مصرفکنندهی منتظر قرار دارد، مطابقت دارد.
Waypoint waypoint =
Waypoint.builder()
.setLatLng(latitude, longitude)
.setTitle("Somewhere in Sydney")
.setPreferredHeading(preferredHeading)
.build()
کیت توسعه نرمافزار ناوبری (Navigation SDK) نزدیکترین بخش جاده به نقطه مسیر را انتخاب میکند - که جهت خط آن (با اختلاف +/- 55 درجه) با سمت جادهای که نقطه مسیر در آن قرار دارد، همتراز باشد.
تنظیم اولویت توقف
در مکانهای خاصی، رانندگان نمیتوانند با خیال راحت توقف کنند (برای مثال، مناطق مرتفع، کشتیها، مکانهای زیرزمینی و سایر مناطق با دسترسی محدود). ویژگی Stopover در صورتی که مکان نقطه مسیر برای توقف وسیله نقلیه مناسب نباشد، آن را به مکانی نزدیک منتقل میکند. وقتی setVehicleStopover روی true تنظیم میکنید، در صورت وجود مکان جایگزین، نقطه مسیر به طور خودکار هنگام محاسبه مسیر جابجا میشود.
چگونه کار میکند؟
شما هنگام ایجاد نقطهی مسیر برای یک توقفگاه، اولویت آن توقفگاه را تعیین میکنید. برای انجام این کار، اولویت setVehicleStopover را همانطور که در مثال زیر نشان داده شده است، مشخص کنید:
Waypoint waypoint =
Waypoint.builder()
.setLatLng(latitude, longitude)
.setTitle("Somewhere in Sydney")
.setVehicleStopover(true)
.build()