نظرة عامة على البحث على طول المسار

تتوفّر ميزات البحث على طول المسار في واجهات برمجة التطبيقات التالية لخدمة Places (الإصدار الجديد):

  • البحث النصي (جديد) فقط: للبحث عن أماكن على طول رحلة محددة مسبقًا المسار الصحيح.
  • البحث النصي (جديد) والبحث عن الأماكن القريبة (جديد): احتساب ملخّص التوجيه من موقع جغرافي محدّد لنقطة الانطلاق إلى كل مكان في نتائج البحث
  • البحث النصي (جديد) فقط: حساب ملخص التوجيه لكل مكان على طول مسار رحلة محدد مسبقًا.

البحث على طول مسار

يمكنك استخدام Routes API لاحتساب مسار الرحلة بين موقعَين جغرافيَّين. يمكن أن تحسب Routes API مسار سيارة أو دراجة للمركبات ذات العجلتين أو نظام النقل العام أو للمشي.

البحث النصي (جديد) يتيح لك استخدام هذا المسار المحسوب لإجراء البحث على طول مسار باستخدام هذا الخيار، يمكنك تمرير المسار المحسوب مسبقًا من Routes API إلى طلب Text Search (جديد). بعد ذلك يحتوي الرد على أماكن تطابق معايير البحث وتقع أيضًا بالقرب من المكان المحدد المسار الصحيح.

يشبه البحث على طول مسار استخدام خيارَي الطلب locationRestriction أو locationBias لتوجيه نتائج البحث. locationRestriction يعرض نتائج البحث التي تقع ضمن حدود إطار العرض، قد يعرض locationBias نتائج بحث خارج إطار العرض. ومع ذلك، في حين أن يتيح الخياران locationBias وlocationRestriction تحديد منطقة لتحيز نتائج البحث، فإن ميزة البحث على طول المسار في البحث النصي تتيح يمكنك تحيز نتائج البحث لتشمل تلك التي لها أدنى أوقات الانحراف من أصل المسار إلى وجهة المسار. يمكنك تحيز نتائج البحث باستخدام إما locationBias أو locationRestriction مع الخطوط المتعددة.

على سبيل المثال، لنفترض أنّ المسار من نقطة الانطلاق، المُشار إليها باسم نقطة طريق في Routes API، إلى الوجهة يتم احتسابه من خلال Routes API:

المسار من نقطة الطريق إلى الوجهة باستخدام نتائج البحث.

عندما تبحث على طول المسار، يميل البحث إلى عرض أماكن بالقرب من المسار بأقل أوقات الانحدار من نقطة الانطلاق إلى الوجهة. في هذا المثال، النقاط "أ" و"ب" و"ج" هي أماكن تم عرضها في نتائج البحث.

حساب ملخص التوجيه

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

في الصورة التالية، النقاط "أ" و"ب" و"ج" هي أماكن يتم عرضها في البحث الرد:

النقاط A وB وC هي أماكن يتم عرضها في استجابة البحث.

لكل مكان في النتائج، يحتوي الردّ على مدة التنقّل و المسافة من نقطة تحديد المسار إلى المكان، إذا كانت متاحة.

يتم تلقائيًا احتساب مدة الرحلة والمسافة باستخدام الخيار TRAFFIC_UNAWARE في Routes API. يمكنك اختياريًا ضبط إعدادات التوجيه المفضّلة لاتخاذ أحوال حركة المرور المباشرة TRAFFIC_AWARE_OPTIMAL أحوال حركة المرور المباشرة التي تقلل من وقت الاستجابة أو السرعة TRAFFIC_AWARE في الاعتبار أثناء العمليات الحسابية.

لمحة عن المسارات والمراحل ونقاط الالتقاء

هناك عدة مكونات تشكل مسارًا، وفقًا لحساب Routes API:

المكونات التي تشكّل مسارًا

يتألّف المسار من المكوّنات التالية:

  • نقطة الطريق: لاحتساب مسار، عليك تحديد المواقع الجغرافية لنقطة الانطلاق والوجهة على الأقل. يمكنك تحديد هذه المواقع الجغرافية على أنّها نقاط طريق في المسار. نقاط الطريق المتوسطة هي مواقع تقع بين الأصل الوجهة التي تريد أن يمر المسار من خلالها.
  • المسار: الرحلة الكاملة بدءًا من نقطة طريق الانطلاق وحتى إلى نقاط الطريق الوسيطة إلى نقطة الطريق الوجهة. يتألّف المسار من مرحلة واحدة أو أكثر.

    عند تمرير مسار إلى Text Search، يتم تمرير خط الالتفاف المتعرج المُشفَّر للمسار كما تعرضه Routes API. شكل خط الالتفاف المُشفَّر هو قائمة مُشفَّرة بنقاط خطوط الطول والعرض تتيح لك تمثيل شكل خط الالتفاف للمسار كسلسلة.

  • الجزء: المسار من نقطة إشارة واحدة في مسار إلى نقطة الإشارة التالية في المسار تتكوّن كل مرحلة من خطوات منفصلة واحدة أو أكثر.

    يحتوي المسار على جزء منفصل للمسار من كل نقطة طريق إلى أخرى. على سبيل المثال، إذا كان المسار يحتوي على نقطة مسار واحدة للمصدر فإن المسار يحتوي على ساق واحدة.

    لكل نقطة طريق إضافية تضيفها إلى المسار بعد المصدر تُسمى نقطة الطريق المتوسطة، فإن واجهة برمجة التطبيقات تضيف مرحلة منفصلة.

لمزيد من المعلومات حول المسارات واحتساب المسارات، يمكنك الاطلاع على المسارات API.

احتساب ملخّص التوجيه من خلال البحث على طول المسار

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

على سبيل المثال، اعتبر المسار التالي من نقطة الانطلاق إلى الوجهة التي يتم احتسابها من خلال Routes API. تمرير هذا المسار إلى واجهة برمجة تطبيقات البحث النصي (الجديدة) على طول بمعايير البحث الخاصة بك.

مسار من نقطة المرور الأصلية إلى الوجهة مع انحراف للبحث عن نتيجة

في هذا المثال، الموقع "أ" هو مكان يتم عرضه في نتائج البحث من "النص" البحث (جديد). يتضمن البحث المدة لكل مكان في الردّ. والمسافة المطلوبة للالتفاف إلى ذلك المكان كرحلة ذات ساقين:

  • تحتوي المرحلة الأولى على مدة الرحلة والمسافة من نقطة الانطلاق إلى المكان. في هذا المثال، من المصدر إلى المكان أ.
  • تحتوي المرحلة الثانية على مدة الرحلة والمسافة من المكان إلى وجهة المسار. في هذا المثال، من A إلى الوجهة.

ومن المعلومات الواردة في الرد، يمكنك بعد ذلك حساب التحويل المدة والمسافة، حيث:

  • \(t_{OD}\) هي مدة الرحلة من نقطة الانطلاق إلى الوجهة، \(s_{OD}\) هي مسافة الرحلة من نقطة الانطلاق إلى الوجهة
  • \(t_{OA}\) هي مدة الرحلة من نقطة الانطلاق إلى "أ"، و \(s_{OA}\) هي مسافة الرحلة من نقطة الانطلاق إلى "أ".
  • \(t_{AD}\) هي مدة الرحلة من "أ" إلى الوجهة، \(s_{AD}\) هي مسافة الرحلة من "أ" إلى الوجهة.

مدّة المسار غير المباشر هي فرق المدّة بين الرحلة الأصلية (من نقطة الانطلاق إلى الوجهة) والرحلة الجديدة (من نقطة الانطلاق إلى الوجهة عبر أ):

$$ t_{detour} = t_{OA} + t_{AD} - t_{OD} $$

مسافة الالتفاف هي فرق المسافة بين الرحلة الأصلية (من نقطة الانطلاق إلى الوجهة) والرحلة الجديدة (من نقطة الانطلاق إلى الوجهة من خلال أ):

$$ s_{detour} = s_{OA} + s_{AD} - s_{OD} $$