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

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

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

ট্র্যাফিক সচেতন পলিলাইন রুট লেভেল এবং লেগ লেভেল উভয়ের জন্যই উপলব্ধ। রুট লেভেলে, ট্র্যাফিক গতির তথ্য 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"
          }
        ] 
      }
    }
  ]
}

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

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

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

Maps SDK ব্যবহারকারীরা গতি বিভাগ এবং পলিলাইন রেন্ডারিং স্কিমার মধ্যে একটি কাস্টমাইজড ম্যাপিং লজিক সংজ্ঞায়িত করার সুযোগ পান। উদাহরণস্বরূপ, কেউ মানচিত্রে "স্বাভাবিক" গতিকে একটি ঘন নীল রেখা হিসাবে প্রদর্শন করার সিদ্ধান্ত নিতে পারেন যেখানে "ধীর" গতিকে একটি ঘন কমলা রেখা হিসাবে প্রদর্শিত হতে পারে, ইত্যাদি।

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

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

জাভা

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