রুট API বর্তমানে পূর্বরূপ (প্রি-GA) এ রয়েছে। প্রাক-GA পণ্য এবং বৈশিষ্ট্যগুলির সীমিত সমর্থন থাকতে পারে এবং প্রাক-GA পণ্য এবং বৈশিষ্ট্যগুলির পরিবর্তনগুলি অন্যান্য প্রাক-GA সংস্করণগুলির সাথে সামঞ্জস্যপূর্ণ নাও হতে পারে। প্রাক-GA অফারগুলি Google মানচিত্র প্ল্যাটফর্ম পরিষেবার নির্দিষ্ট শর্তাবলী দ্বারা আচ্ছাদিত। আরও তথ্যের জন্য, লঞ্চ পর্যায়ের বিবরণ দেখুন।

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

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

পলিলাইন সম্পর্কে আরও জানতে, দেখুন:

একটি পলিলাইন ফেরত দিন

একটি পলিলাইন পলিলাইন (REST) ​​বা পলিলাইন ( gRPC ) বস্তু দ্বারা প্রতিনিধিত্ব করা হয়। আপনি রুট এবং লেগ উভয় স্তরেই প্রতিক্রিয়াতে একটি পলিলাইন ফেরত দিতে পারেন।

রেসপন্স ফিল্ড মাস্ক ব্যবহার করে কোন পলিলাইন ফিরতে হবে তা নিয়ন্ত্রণ করুন:

  • রুট লেভেলে , রেসপন্স ফিল্ড মাস্কে routes.polyline অন্তর্ভুক্ত করে রেসপন্সে একটি পলিলাইন ফেরত দিন।

  • লেগ লেভেলে , routes.legs.polyline অন্তর্ভুক্ত করে রুটের প্রতিটি পায়ের প্রতিক্রিয়ায় একটি পলিলাইন ফেরত দিন।

উদাহরণস্বরূপ, পুরো রুটের জন্য এবং প্রতিটি পায়ের জন্য একটি পলিলাইন ফেরত দিতে:

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

পলিলাইন টাইপ কনফিগার করুন

ComputeRoutes পদ্ধতি (REST) ​​এবং ComputeRoutes পদ্ধতি (gRPC) পলিলাইন টাইপ নিয়ন্ত্রণের জন্য polylineEncoding এনকোডিং অনুরোধ বিকল্পকে সমর্থন করে।

polylineEncoding এনকোডিং নির্দিষ্ট করে কিভাবে ENCODED_POLYLINE (ডিফল্ট) হিসাবে এনকোড করতে হয়, যার অর্থ পলিলাইন এনকোডিং অ্যালগরিদম ব্যবহার করুন বা GEO_JSON_LINESTRING , মানে GeoJSON লাইনস্ট্রিং ফর্ম্যাট ব্যবহার করুন৷

উদাহরণস্বরূপ, অনুরোধের অংশে:

{
  "origin":{
    "location":{
      "latLng":{
        "latitude": 37.419734,
        "longitude": -122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude": 37.417670,
        "longitude": -122.079595
      }
    }
  },
  "travelMode": "DRIVE",
  "routingPreference": "TRAFFIC_AWARE",
  "polylineQuality": "HIGH_QUALITY",
  "polylineEncoding": "ENCODED_POLYLINE", 
  "departureTime": "2019-10-15T15:01:23.045123456Z",
  ...
}

ট্রাফিক তথ্য ফেরত

টোল এবং সম্ভাব্য ট্রাফিক জোন সীমাবদ্ধতা সম্পর্কে তথ্য অন্তর্ভুক্ত করার জন্য আপনি প্রতিক্রিয়া কনফিগার করতে পারেন:

  • রুট স্তরে , এই তথ্যটি একটি RouteTravelAdvisory (REST) ​​বা RouteTravelAdvisory (gRPC) অবজেক্টে অন্তর্ভুক্ত করা হয়।

  • লেগ লেভেলে , এই তথ্যটি একটি RouteLegTravelAdvisory (REST) ​​বা RouteLegTravelAdvisory (gRPC) অবজেক্টে অন্তর্ভুক্ত করা হয়।

RouteTravelAdvisory এবং RouteLegTravelAdvisory উভয়ই ট্র্যাফিক গতির তথ্যের জন্য ট্র্যাফিক ঘনত্বের বিবরণের জন্য একটি অ্যারে ক্ষেত্র অন্তর্ভুক্ত করে। অ্যারের প্রতিটি বস্তু একটি SpeedReadingInterval (REST) ​​বা SpeedReadingInterval (gRPC) অবজেক্ট দ্বারা উপস্থাপিত হয়।

একটি SpeedReadingInterval অবজেক্ট একটি রুট ব্যবধানের জন্য গতি পড়া অন্তর্ভুক্ত। অবজেক্টের সম্পূর্ণ অ্যারে ওভারল্যাপ ছাড়াই রুটের পুরো পলিলাইনকে কভার করে। একটি নির্দিষ্ট ব্যবধানের শুরু বিন্দু পূর্ববর্তী ব্যবধানের শেষ বিন্দুর সমান।

পলিলাইনের সাথে ট্র্যাফিক তথ্য ফেরত দেওয়ার পদ্ধতিটি কনফিগার করতে, প্রতিক্রিয়া ক্ষেত্র মাস্ক ব্যবহার করুন:

  • রুট লেভেলে , রেসপন্স ফিল্ড মাস্কে routes.travelAdvisory অন্তর্ভুক্ত করে প্রতিক্রিয়াতে সমস্ত ট্রাফিক তথ্য ফেরত দিন। শুধু SpeedReadingInterval ফেরাতে, routes.travelAdvisory.speedReadingIntervals নির্দিষ্ট করুন

  • লেগ লেভেলে , routes.legs.travelAdvisory.speedReadingIntervals বা routes.legs.steps.travelAdvisory.speedReadingIntervals অন্তর্ভুক্ত করে রুটের প্রতিটি পায়ের প্রতিক্রিয়াতে ট্রাফিক তথ্য ফেরত দিন।

ট্র্যাফিক তথ্য ফেরত দেওয়ার সময়, আপনি সাধারণত প্রতিক্রিয়াতে পলিলাইন এবং ট্র্যাফিক তথ্য উভয়ই ফেরত দেন:

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

একটি ট্রাফিক-সচেতন পলিলাইনের জন্য উদাহরণ প্রতিক্রিয়া

প্রতিক্রিয়া হিসাবে, রুট-স্তরের ট্রাফিক routes.travelAdvisory.speedReadingIntervals এ উপলব্ধ। লেগ-লেভেল ট্রাফিক routes.legs.travelAdvisory.speedReadingIntervals এর অধীনে উপলব্ধ।

প্রতিটি ব্যবধান তার startPolylinePointIndex , endPolylinePointIndex , এবং সংশ্লিষ্ট গতি বিভাগ দ্বারা বর্ণিত হয়। লক্ষ্য করুন যে ব্যবধানের মধ্যে সূচনা সূচকের অভাব প্রোটো3 অনুশীলনের সাথে সূচক 0 এর সাথে মিলে যায়।

startPolylinePointIndex এবং endPolylinePointIndex মান সবসময় পরপর হয় না। উদাহরণ স্বরূপ:

{
  "startPolylinePointIndex": 2,
  "endPolylinePointIndex": 4,
  "speed": "NORMAL"
}

এই ক্ষেত্রে, ট্র্যাফিক পরিস্থিতি সূচক 2 থেকে সূচক 4 পর্যন্ত একই ছিল।

নীচে সম্পূর্ণ প্রতিক্রিয়া দেখানো হয়েছে:

{
  "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 দিয়ে ট্রাফিক সচেতন পলিলাইন রেন্ডার করুন

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

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

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

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

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

জাভা

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)
)

iOS

উদ্দেশ্য গ

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