পলিলাইনে ট্রাফিক তথ্যের জন্য অনুরোধ করুন

Routes Preferred API-টি পলিলাইন বরাবর ট্র্যাফিকের অবস্থা সম্পর্কে তথ্য অনুরোধ করার সুযোগ দেয়। ট্র্যাফিকের অবস্থা রেসপন্স পলিলাইনের একটি নির্দিষ্ট ব্যবধিতে প্রযোজ্য গতির বিভিন্ন ক্যাটাগরির (স্বাভাবিক, ধীর, যানজট) মাধ্যমে প্রকাশ করা হয়। এই ব্যবধিগুলো তাদের শুরু (অন্তর্ভুক্ত) এবং শেষ (বর্জনীয়) পলিলাইন পয়েন্টের ইনডেক্স দ্বারা সংজ্ঞায়িত করা হয়।

উদাহরণ অনুরোধ

ট্র্যাফিক-সচেতন পলিলাইন রুট লেভেল এবং লেগ লেভেল উভয়ের জন্যই উপলব্ধ। রুট লেভেলে, ট্র্যাফিকের গতির তথ্য RouteTravelAdvisory রেসপন্স ফিল্ডের অধীনে SpeedReadingIntervals হিসেবে প্রদান করা হয়। রুটের পলিলাইনের পাশাপাশি ট্র্যাফিকের তথ্য পাওয়ার জন্য, রেসপন্স ফিল্ড মাস্কে polyline এবং speedReadingIntervals উভয়ই অন্তর্ভুক্ত করুন।

যদি ফিল্ড মাস্কে routes.legs.travelAdvisory.speedReadingIntervals থাকে, তাহলে রেসপন্সে RouteLegTravelAdvisory-এর অধীনে লেগ লেভেলের ট্র্যাফিক ডেটা থাকবে।

X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline,routes.travelAdvisory.speedReadingIntervals,routes.legs.polyline.encodedPolyline,routes.legs.travelAdvisory.speedReadingIntervals

রেসপন্স ফিল্ডমাস্ক নির্দিষ্ট করার বিষয়ে অতিরিক্ত তথ্যের জন্য 'ফেরত দেওয়ার জন্য ফিল্ড নির্বাচন করুন' অংশটি দেখুন।

উদাহরণ প্রতিক্রিয়া

যতক্ষণ পর্যন্ত ফিল্ড মাস্কের মাধ্যমে speedReadingIntervals জন্য অনুরোধ করা হয়, ততক্ষণ পর্যন্ত সেগুলি routes.travelAdvisory.speedReadingIntervals এর অধীনে পূরণ করা হয়। লেগ লেভেলের ট্র্যাফিক routes.legs.travelAdvisory.speedReadingIntervals এর অধীনে পাওয়া যায়। প্রতিটি ইন্টারভ্যাল তার startPolylinePointIndex , endPolylinePointIndex এবং সংশ্লিষ্ট স্পিড ক্যাটাগরি দ্বারা বর্ণিত হয়। উল্লেখ্য যে, proto3-এর রীতি অনুসারে, ইন্টারভ্যালের মধ্যে স্টার্ট ইনডেক্সের অনুপস্থিতি ইনডেক্স 0-এর সমতুল্য।

{
  "routes": [
    {
      "legs": {
        "polyline": {
          "encodedPolyline": "}boeF~zbjVAg@EmB`GWHlD"
        },
        "travelAdvisory": {
          "speedReadingIntervals": [
            {
              "endPolylinePointIndex": 1,
              "speed": "NORMAL"
            },
            {
              "startPolylinePointIndex": 1,
              "endPolylinePointIndex": 2,
              "speed": "SLOW"
            },
            {
              "startPolylinePointIndex": 2,
              "endPolylinePointIndex": 4,
              "speed": "NORMAL"
            }
          ] 
        }
      },
      "polyline": {
        "encodedPolyline": "}boeF~zbjVAg@EmB`GWHlD"
      },
      "travelAdvisory": {
        "speedReadingIntervals": [
          {
            "endPolylinePointIndex": 1,
            "speed": "NORMAL"
          },
          {
            "startPolylinePointIndex": 1,
            "endPolylinePointIndex": 2,
            "speed": "SLOW"
          },
          {
            "startPolylinePointIndex": 2,
            "endPolylinePointIndex": 4,
            "speed": "NORMAL"
          }
        ] 
      }
    }
  ]
}

Maps SDK ব্যবহার করে ট্র্যাফিক-সচেতন পলিলাইন রেন্ডার করুন

আমরা ম্যাপে ট্র্যাফিক-সচেতন পলিলাইন প্রদর্শনের জন্য গুগল ম্যাপস এসডিকে-এর বিভিন্ন ফিচার, যেমন—পলিলাইনের প্রসারিত অংশ বরাবর কাস্টম কালারিং, স্ট্রোক এবং প্যাটার্ন ব্যবহার করার পরামর্শ দিই। পলিলাইন ব্যবহার সম্পর্কে আরও বিস্তারিত জানতে, অ্যান্ড্রয়েডের জন্য পলিলাইন ফিচার এবং আইওএস-এর জন্য পলিলাইন ফিচার দেখুন।

পলিলাইন রেন্ডারিং এর উদাহরণ

Maps SDK-এর ব্যবহারকারীরা স্পিড ক্যাটাগরি এবং পলিলাইন রেন্ডারিং স্কিমার মধ্যে একটি কাস্টমাইজড ম্যাপিং লজিক নির্ধারণ করার সুযোগ পান। উদাহরণস্বরূপ, কেউ ম্যাপে 'NORMAL' স্পিডকে একটি মোটা নীল লাইন হিসেবে, 'SLOW' স্পিডকে একটি মোটা কমলা লাইন হিসেবে ইত্যাদি প্রদর্শন করার সিদ্ধান্ত নিতে পারেন।

নিম্নলিখিত কোড স্নিপেটগুলি মেলবোর্ন থেকে পার্থ পর্যন্ত জিওডেসিক সেগমেন্ট সহ একটি মোটা নীল পলিলাইন যোগ করে। আরও তথ্যের জন্য, কাস্টমাইজিং অ্যাপিয়ারেন্সেস (অ্যান্ড্রয়েডের জন্য) এবং কাস্টমাইজ দ্য পলিলাইন (আইওএসের জন্য) দেখুন।

অ্যান্ড্রয়েড

জাভা

Polyline line = map.addPolyline(new PolylineOptions()
    .add(new LatLng(-37.81319, 144.96298), new LatLng(-31.95285, 115.85734))
    .width(25)
    .color(Color.BLUE)
    .geodesic(true));

কোটলিন

val line: Polyline = map.addPolyline(
  PolylineOptions()
    .add(LatLng(-37.81319, 144.96298), LatLng(-31.95285, 115.85734))
    .width(25f)
    .color(Color.BLUE)
    .geodesic(true)
)

আইওএস

উদ্দেশ্য-সি

GMSMutablePath *path = [GMSMutablePath path];
[path addLatitude:-37.81319 longitude:144.96298];
[path addLatitude:-31.95285 longitude:115.85734];
GMSPolyline *polyline = [GMSPolyline polylineWithPath:path];
polyline.strokeWidth = 10.f;
polyline.strokeColor = .blue;
polyline.geodesic = YES;
polyline.map = mapView;

সুইফট

let path = GMSMutablePath()
path.addLatitude(-37.81319, longitude: 144.96298)
path.addLatitude(-31.95285, longitude: 115.85734)
let polyline = GMSPolyline(path: path)
polyline.strokeWidth = 10.0
polyline.geodesic = true
polyline.map = mapView