حساب مصفوفة مسار

يمكنك احتساب المسافة ومدة مسار لعدة مصادر ووجهات باستخدام طريقة ComputeRouteMatrix لواجهة برمجة التطبيقات Routes Preferred API. يتيح ComputeRouteMatrix كلّ من طلبات gRPC البثّ وطلبات HTTP REST.

استنادًا إلى قائمة بأزواج من مصادر ووجهات، تحتسب دالة ComputeRouteMatrix المسافة ومدة مسار يبدأ من كل مصدر وينتهي عند كل وجهة. يتوافق كل عنصر من مصدر البيانات مع معلومات مسار واحد.

تتمتع طريقة ComputeRouteMatrix بعدة مزايا مقارنةً ب خدمة "مصفوفة المسافات":

  • يسمح البث بإرجاع العناصر قبل احتساب المصفوفة بالكامل، ما يقلل من وقت الاستجابة.
  • تتوفّر في ComputeRouteMatrix خيارات دقيقة لاحتساب عدد الزيارات، مما يتيح لك اتخاذ قرارات مدروسة بشأن مفاضلة الجودة ووقت الاستجابة.
  • يتم تنفيذ الطلبات بأولوية أعلى ضمن بنية Google الأساسية، مما يؤدي إلى زيادة مدى التوفّر.
  • يمكنك تحديد الاتجاه (اتجاه التنقّل) ومعلومات جانب الطريق للنقاط المرجعية.
  • يمكنك طلب عرض معلومات الرسوم، بالإضافة إلى مسافة المسار والوقت المقدّر للوصول.

تفعيل طريقة ComputeRouteMatrix

قبل أن تتمكّن من استخدام طريقة ComputeRouteMatrix في الرمز البرمجي، عليك تفعيلها. لمزيد من المعلومات حول تفعيل واجهة برمجة التطبيقات Methods Preferred API لـ "الخطوط"، يُرجى الاطّلاع على البدء.

استخدام طريقة ComputeRouteMatrix

تتوفّر طريقة ComputeRouteMatrix من خلال نقطة نهاية Routes Preferred v1.

يمكنك الاطّلاع على المستندات التالية للحصول على معلومات أكثر تفصيلاً:

‫gRPC: https://developers.google.com/maps/documentation/routes_preferred/reference/rpc/google.maps.routes.v1

‫REST: https://developers.google.com/maps/documentation/routes_preferred/reference/rest/v1/TopLevel/computeRouteMatrix

توضِّح الخطوات العامة التالية كيفية استخدام gRPC للاتّصال بأسلوب ComputeRouteMatrix:

  1. اطّلِع على ملفات protobuffers اللازمة من مستودع googleapis:

    https://github.com/googleapis/googleapis/tree/master/google/maps/routes

    يُرجى العِلم أنّ بعض أنظمة الإنشاء، مثل Go، قد تُجري ذلك تلقائيًا نيابةً عنك.

  2. باستخدام لغتك المفضّلة ومجموعة أدوات الإنشاء، أنشئ رمز ملف protobuffer المعنيّ.

  3. أنشئ طلبك. يجب إرسال قطعتَين مطلوبتَين من البيانات الوصفية مع الطلب:

    • يجب ضبط X-Goog-Api-Key على مفتاح واجهة برمجة التطبيقات.
    • يجب ضبط X-Goog-Fieldmask على قائمة مفصولة بفواصل للحقول التي تطلبها من الاستجابة. على سبيل المثال، X-Goog-FieldMask: originIndex,destinationIndex,duration,distanceMeters,status. يمكنك استخدام حرف البدل (*) للإشارة إلى جميع الحقول، ولكن لا يُنصح بذلك. استخدِم الحرف النائب لاختبار واستيعاب استجابة واجهة برمجة التطبيقات، ولكن أدرِج الحقول التي تريدها في قناع الحقل بوضوح في رمز الإنتاج.

      لمزيد من المعلومات حول كيفية إنشاء سلسلة قناع الحقل، يُرجى الاطّلاع على https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto. يُرجى العِلم أنّ إيقاف الحقول التي لا تحتاج إليها يمكن أن يقلل من وقت الاستجابة لأنّه قد تتطلّب هذه الحقول المزيد من العمليات الحسابية. سيظل وقت الاستجابة مستقرًا إذا حدّدت الحقول التي تحتاج إليها، وستتم إضافة حقول جديدة تتطلّب مزيدًا من العمليات الحسابية لاحقًا.

  4. أرسِل طلبك إلى routespreferred.googleapis.com:443.يجب استخدام بروتوكول أمان طبقة النقل (TLS).

للحصول على أمثلة على استخدام طريقة ComputeRouteMatrix، يُرجى الاطّلاع على أمثلة على احتساب مصفوفة المسارات (إصدار تجريبي).

من الميزات الفريدة لطريقة ComputeRouteMatrix هي أنّه يمكن عرض رموزال أخطاء إما للبث بأكمله أو لعناصر الفردية. على سبيل المثال، يعرض اتصال البث خطأً إذا كان الطلب مكتوبًا بشكلٍ غير صحيح (على سبيل المثال، إذا لم يكن لديه مصادر). ومع ذلك، إذا كان الخطأ ينطبق على عدد قليل من عناصر البث فقط (على سبيل المثال، ضبط معرّف مكان غير صالح لمكان منشأ)، لن تحتوي سوى العناصر المتأثّرة بالخطأ على رموز الخطأ.

لا يمكن ضمان عرض العناصر التي يعرضها مصدر البيانات بترتيب معيّن. ولهذا السبب، يحتوي كل عنصر على origin_index وdestination_index. بالنسبة إلى المصادر والوجهات التي يحدّدها الطلب، يكون مصدر المسار مساويًا لـ origins[origin_index] لعنصر معيّن ويكون وجهة المسار مساويًا لـ destinations[destination_index]. يتمّ فهرسة هذه المصفوفات من الصفر. من المهم تخزين طلبات قائمة نقاط الانطلاق والوجهة.

احتساب رسوم الطرق السريعة

للحصول على معلومات عن احتساب رسوم الطرق، يُرجى الاطّلاع على مقالة احتساب رسوم الطرق.

للحصول على أمثلة على احتساب رسوم العبور، يُرجى الاطّلاع على أمثلة على احتساب مصفوفة المسارات.