একটি রুট ম্যাট্রিক্স পান

ইউরোপীয় অর্থনৈতিক অঞ্চল (EEA) ডেভেলপাররা

একাধিক উৎস এবং গন্তব্যস্থলের জন্য একটি রুটের দূরত্ব এবং সময়কাল গণনা করতে Routes API ব্যবহার করুন computeRouteMatrix পদ্ধতি (REST) ​​অথবা স্ট্রিমিং ComputeRouteMatrix পদ্ধতি (gRPC) ব্যবহার করে।

উৎপত্তিস্থল এবং গন্তব্যস্থলের একটি তালিকা দেওয়া হলে, পদ্ধতিটি প্রতিটি উৎপত্তিস্থল থেকে শুরু হয়ে প্রতিটি গন্তব্যস্থলে শেষ হওয়া রুটের দূরত্ব এবং সময়কাল গণনা করে।

একটি ট্রানজিট রুট ম্যাট্রিক্স পান

আপনি ট্রানজিটে একটি রুট ম্যাট্রিক্সও গণনা করতে পারেন। উদাহরণস্বরূপ, ট্রানজিটে একটি রুট ম্যাট্রিক্স পান দেখুন।

অনুরোধের সীমা

কম্পিউট রুট ম্যাট্রিক্স পদ্ধতিগুলি ঠিকানা বা স্থান আইডি ব্যবহার করে ওয়েপয়েন্ট এবং উপাদানগুলির জন্য নিম্নলিখিত অনুরোধ সীমা প্রয়োগ করে। উপাদানগুলি হল একটি রুট ম্যাট্রিক্সে প্রতিটি উৎপত্তি এবং গন্তব্যের মধ্যে রুট, তাই উপাদানগুলির সংখ্যা হল উৎপত্তির সংখ্যা গুণিতক গন্তব্যের সংখ্যা। উদাহরণস্বরূপ, যদি আপনার 10টি উৎপত্তি এবং 10টি গন্তব্য থাকে, তাহলে আপনার 100টি উপাদান থাকবে:

  • যেসব রুট TRANSIT রুট নয়, তাদের জন্য উপাদানের সংখ্যা 625 এর বেশি হতে পারে না।

  • যদি আপনি একটি TRANSIT রুট নির্দিষ্ট করেন , তাহলে উপাদানের সংখ্যা ১০০ এর বেশি হতে পারবে না।

  • যদি আপনি TRAFFIC_AWARE_OPTIMAL উল্লেখ করেন , তাহলে উপাদানের সংখ্যা ১০০ এর বেশি হতে পারবে না। TRAFFIC_AWARE_OPTIMAL সম্পর্কে আরও তথ্যের জন্য, ট্র্যাফিক ডেটা কীভাবে এবং কীভাবে অন্তর্ভুক্ত করবেন তা উল্লেখ করুন দেখুন।

  • যদি আপনি ঠিকানা বা স্থান আইডি ব্যবহার করে উৎস বা গন্তব্যস্থল নির্দিষ্ট করেন , তাহলে আপনি এইভাবে মোট ৫০টি পর্যন্ত উল্লেখ করতে পারবেন।

প্রতিক্রিয়া ত্রুটি

কম্পিউট রুট ম্যাট্রিক্স পদ্ধতির একটি বৈশিষ্ট্য হল যে সম্পূর্ণ প্রতিক্রিয়ার জন্য অথবা পৃথক প্রতিক্রিয়া উপাদানের জন্য ত্রুটিগুলি ফেরত পাঠানো যেতে পারে। উদাহরণস্বরূপ, যদি অনুরোধটি ত্রুটিপূর্ণ হয় (উদাহরণস্বরূপ, এর উৎপত্তি শূন্য) তাহলে সম্পূর্ণ প্রতিক্রিয়াটিতে একটি ত্রুটি থাকে।

তবে, যদি কোনও ত্রুটি প্রতিক্রিয়ার উপাদানগুলির একটি উপসেটে প্রযোজ্য হয় (উদাহরণস্বরূপ, একটি রুট উৎপত্তি এবং গন্তব্যের একটি সংমিশ্রণের জন্য গণনা করা যায় না), তবে কেবলমাত্র ত্রুটি দ্বারা প্রভাবিত উপাদানগুলি একটি ত্রুটি কোড ফেরত দেয়।

জিআরপিসি স্ট্রিমের ফলাফল

ComputeRouteMatrix gRPC পদ্ধতিটি উৎস এবং গন্তব্যের একটি তালিকা গ্রহণ করে এবং উৎস এবং গন্তব্যের প্রতিটি সংমিশ্রণের জন্য রুট তথ্য সম্বলিত একটি স্ট্রিম প্রদান করে। যেহেতু ফলাফলগুলি একটি স্ট্রিম হিসাবে ফেরত পাঠানো হয়, তাই ফলাফল প্রক্রিয়া শুরু করার আগে আপনাকে সমস্ত সম্ভাব্য রুট সংমিশ্রণ গণনা করা পর্যন্ত অপেক্ষা করতে হবে না।

স্ট্রিম দ্বারা ফেরত দেওয়া উপাদানগুলি কোনও ক্রমে ফেরত দেওয়ার গ্যারান্টি দেওয়া হয় না। অতএব, প্রতিটি প্রতিক্রিয়া উপাদানে একটি origin_index এবং একটি destination_index থাকে। অনুরোধ দ্বারা নির্দিষ্ট origin এবং destinations এর জন্য, route origin একটি প্রদত্ত উপাদানের জন্য origins[origin_index] এর সমতুল্য এবং route destinations[destination_index] এর সমতুল্য। এই অ্যারেগুলি শূন্য-সূচকযুক্ত। origin এবং destination তালিকার ক্রম সংরক্ষণ করা গুরুত্বপূর্ণ।

একটি রুট ম্যাট্রিক্সের উদাহরণ গণনা করুন

একটি রুট ম্যাট্রিক্স গণনা করার জন্য HTTP অনুরোধে computeRouteMatrix পদ্ধতি ব্যবহার করুন।

HTTP উদাহরণ

নিচের উদাহরণটি একটি computeRouteMatrix HTTP অনুরোধ দেখায়। এই উদাহরণে আপনি:

  • দুটি উৎস এবং দুটি গন্তব্যস্থলের ওয়েপয়েন্টের একটি অ্যারে নির্দিষ্ট করুন। পদ্ধতিটি প্রতিটি উৎস থেকে প্রতিটি গন্তব্যস্থলে যাওয়ার জন্য একটি রুট গণনা করে যাতে প্রতিক্রিয়াটিতে চারটি রুট থাকে।

    অ্যারেতে, প্রথম উপাদানটি 0 এর সূচকে থাকে, দ্বিতীয়টি 1 এর সূচকে থাকে, এবং আরও অনেক কিছু।

  • প্রতিক্রিয়া (REST) ​​অথবা ComputeRoutesResponse (gRPC) এর কোন ক্ষেত্রগুলি ফেরত পাঠাতে হবে তা নির্দিষ্ট করার জন্য একটি প্রতিক্রিয়া ক্ষেত্র মাস্ক অন্তর্ভুক্ত করুন। এই উদাহরণে, প্রতিটি রুটের জন্য originIndex , destinationIndex , duration , distanceMeters , status এবং condition ফেরত দেওয়ার অনুরোধটি কনফিগার করুন। আরও তথ্যের জন্য, ফিরে আসার জন্য ক্ষেত্রগুলি নির্বাচন করুন দেখুন।

curl -X POST -d '{
  "origins": [
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.420761,
            "longitude": -122.081356
          }
        }
      },
      "routeModifiers": { "avoid_ferries": true}
    },
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.403184,
            "longitude": -122.097371
          }
        }
      },
      "routeModifiers": { "avoid_ferries": true}
    }
  ],
  "destinations": [
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.420999,
            "longitude": -122.086894
          }
        }
      }
    },
    {
      "waypoint": {
        "location": {
          "latLng": {
            "latitude": 37.383047,
            "longitude": -122.044651
          }
        }
      }
    }
  ],
  "travelMode": "DRIVE",
  "routingPreference": "TRAFFIC_AWARE"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: originIndex,destinationIndex,duration,distanceMeters,status,condition' \
'https://routes.googleapis.com/distanceMatrix/v2:computeRouteMatrix'

উত্তরটিতে সমস্ত উৎপত্তি এবং গন্তব্যস্থলের সমন্বয়ের জন্য চারটি সম্ভাব্য রুট রয়েছে।

originIndex এবং destinationIndex রেসপন্স ফিল্ড ব্যবহার করে রেসপন্সের প্রতিটি রুট শনাক্ত করুন। উদাহরণস্বরূপ, রেসপন্সে 1 এর একটি originIndex অনুরোধের origins অ্যারের সূচক 1-এর ওয়েপয়েন্ট থেকে গণনা করা একটি রুটের সাথে মিলে যায়।

[
    {
        "originIndex": 0,
        "destinationIndex": 0,
        "status": {},
        "distanceMeters": 822,
        "duration": "160s",
        "condition": "ROUTE_EXISTS"
    },
    {
        "originIndex": 1,
        "destinationIndex": 0,
        "status": {},
        "distanceMeters": 2919,
        "duration": "361s",
        "condition": "ROUTE_EXISTS"
    },
    {
        "originIndex": 1,
        "destinationIndex": 1,
        "status": {},
        "distanceMeters": 5598,
        "duration": "402s",
        "condition": "ROUTE_EXISTS"
    },
    {
        "originIndex": 0,
        "destinationIndex": 1,
        "status": {},
        "distanceMeters": 7259,
        "duration": "712s",
        "condition": "ROUTE_EXISTS"
    }
]

জিআরপিসি উদাহরণ

উদাহরণস্বরূপ gRPC অনুরোধ, উদাহরণ gRPC অনুরোধের উদাহরণগুলি দেখুন। সেই পৃষ্ঠার জাভা উদাহরণটি কম্পিউট রুট এবং কম্পিউট রুট ম্যাট্রিক্স উভয়কেই কল করে।