کار با چندخطی‌ها

توسعه‌دهندگان منطقه اقتصادی اروپا (EEA)

روش computeRoutes مسیر نشان‌داده‌شده با چندخطی را به‌عنوان بخشی از پاسخ برمی‌گرداند. می‌توانید دو نوع چندخطی درخواست کنید:

  • چندخطی پایه (پیش‌فرض)، نمایانگر مسیری است که اطلاعات ترافیک در چندخطی جاسازی نشده است. درخواست‌هایی که چندخطی پایه برمی‌گردانند با نرخ «مسیرهای پایه» صورت‌حساب می‌شوند. درباره صدور صورت‌حساب برای Routes API بیشتر بدانید.
  • چندخطی آگاه از ترافیک، حاوی اطلاعاتی درباره شرایط ترافیک درطول مسیر است. شرایط ترافیک براساس دسته‌های سرعت (NORMAL، SLOW، TRAFFIC_JAM) که در بازه مشخصی از چندخطی اعمال می‌شود بیان می‌شود. درخواست‌های چندخطی‌های آگاه از ترافیک با نرخ Routes Preferred صورت‌حساب می‌شود. درباره صدور صورت‌حساب برای Routes API بیشتر بدانید.
  • چندخطی چندحالته، حاوی جزئیات حمل‌ونقل عمومی و همچنین اطلاعات ترافیک است. درخواست‌های چندخطی چندحالته با نرخ Routes Preferred صورت‌حساب می‌شود. درباره صدور صورت‌حساب برای Routes API بیشتر بدانید.

چندضلعی پایه (پیش‌فرض)

چندخطی با شیء Polyline نشان داده می‌شود؛ مسیر آرایه‌ای از مختصات LatLngAltitude است. برای برگرداندن چندخطی پایه، روش computeRoutes را با ویژگی fields تنظیم‌شده روی path فراخوانی کنید، سپس روش createPolylines را در نمونه مسیر فراخوانی کنید تا شیء Polyline را دریافت کنید.

مثال زیر نحوه درخواست چندخطی پایه را نشان می‌دهد:

// Define a basic routes request.
const requestWithBasicPolyline = {
  origin: '155 Steuart St, San Francisco, CA 94105',
  destination: '450 Powell St, San Francisco, CA 94102',
  travelMode: 'WALKING',
  fields: ['path'],  // Request path field to get a polyline.
};
  

چندخطی آگاه از ترافیک

برای درخواست چندخطی آگاه از ترافیک، ویژگی‌های زیر را به درخواستتان اضافه کنید:

  1. خصوصیت travelMode را روی DRIVING تنظیم کنید.
  2. خصوصیت routingPreference را روی TRAFFIC_AWARE تنظیم کنید.
  3. خصوصیت extraComputations را روی TRAFFIC_ON_POLYLINE تنظیم کنید.
  4. فیلدهای path، speedPaths، و routeLabels را مشخص کنید.

مثال زیر نحوه درخواست چندخطی آگاه از ترافیک را نشان می‌دهد:

// Define a traffic aware routes request.
const requestWithTraffic = {
  origin: '200 King St San Francisco, CA 94107',
  destination: 'Pier 41, San Francisco, CA 94133',
  travelMode: 'DRIVING',
  routingPreference: 'TRAFFIC_AWARE',
  extraComputations: ['TRAFFIC_ON_POLYLINE'],
  fields: ['speedPaths'],
};
  

نمایش چندخطی‌ها روی نقشه

برای نمایش چندخطی‌ها روی نقشه، createPolylines را در شیء مسیر فراخوانی کنید، سپس از روش setMap استفاده کنید تا نقشه چندخطی را روی شیء نقشه تنظیم کنید. از شیء نقشه برای نمایش چندخطی روی نقشه استفاده می‌شود.

مثال زیر نحوه نمایش چندخطی را روی نقشه نشان می‌دهد:

  // Call createPolylines to create polylines for the first route.
  mapPolylines = routes[0].createPolylines();
  // Add polylines to the map.
  mapPolylines.forEach((polyline) => polyline.setMap(map));