تحديد محطة على طول المسار

المطوّرون في المنطقة الاقتصادية الأوروبية

يمكنك ضبط محطة توقّف على طول مسار رحلة، مثلاً لاستلام أو تسليم طرد، بإحدى الطريقتَين التاليتَين:

  • إضافة نقطة طريق وسيطة: هذا هو الخيار التلقائي. أضِف نقطة طريق وسيطة بين نقطة الانطلاق والوجهة في مصفوفة intermediates. يُثبِّت محرّك التوجيه نقطة الطريق على أقرب طريق يمكن التنقّل فيه، ويقسّم المسار إلى RouteLeg مقطعًا متصلاً بهذه المحطة.
  • تحديد vehicleStopover: إذا كنت تريد أن يحلّل محرّك تحديد أفضل مسار المسارات بشكل إضافي لتجنُّب قطاعات الطرق غير المناسبة للتوقّف، مثل الطرق السريعة أو الاتصالات النفَقية أو الجسور العلوية، اضبط vehicleStopover: true على نقطة على المسار.

إضافة نقطة طريق وسيطة

لضبط محطة توقّف على طول مسار، أضِف نقطة طريق وسيطة إلى مصفوفة intermediates في طلبك.

تؤدي إضافة نقطة طريق وسيطة إلى ما يلي:

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

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

مثال: إضافة نقطة على المسار وسيطة

يوضّح المثال التالي كيفية ضبط محطة توقّف على طول مسار من خلال إضافة نقطة على المسار وسيطة في طلب computeRoutes POST:

curl -X POST -d '{
  "origin":{
    "location":{
      "latLng":{
        "latitude": 37.419734,
        "longitude": -122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude": 37.417670,
        "longitude": -122.079595
      }
    }
  },
  "intermediates": [
    {
      "location":{
        "latLng":{
          "latitude": 37.419734,
          "longitude": -122.0807784
        }
      }
    }
  ],
  "travelMode": "DRIVE"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.legs' \
'https://routes.googleapis.com/directions/v2:computeRoutes'

لمزيد من المعلومات حول نقاط المرور المتوسطة وأجزاء المسار، اطّلِع على ضبط نقاط مرور متوسطة.

تحديد vehicleStopover للملاءمة مع خيارَي الاستلام والتسليم

في حين أنّ نقطة على المسار الوسيطة العادية يتم محاذاتها تلقائيًا على أقرب طريق، لا يكون هذا الطريق مناسبًا دائمًا لتوقّف مركبة. عندما تريد أن يحلّل محرّك تحديد أفضل مسار بيانات إضافية لتقييم مدى ملاءمة الطريق لاستلام الطلب أو مغادرة المسار، اضبط قيمة vehicleStopover: true على نقطة على المسار.

عند ضبط vehicleStopover: true، يقيّم محرّك التوجيه قطاعات الطرق المرشّحة ويحاول تجنُّب الطرق غير المناسبة للتوقّف، مثل الطرق السريعة والأنفاق والجسور العلوية.

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

مثال: تحديد vehicleStopover على نقطة على المسار

يوضّح المثال التالي كيفية ضبط vehicleStopover: true على نقطة طريق وسيطة في طلب POST كامل:

curl -X POST -d '{
  "origin":{
    "location":{
      "latLng":{
        "latitude": 37.419734,
        "longitude": -122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude": 37.417670,
        "longitude": -122.079595
      }
    }
  },
  "intermediates": [
    {
      "location":{
        "latLng":{
          "latitude": 37.419734,
          "longitude": -122.0807784
        }
      },
      "vehicleStopover": true
    }
  ],
  "travelMode": "DRIVE"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.legs' \
'https://routes.googleapis.com/directions/v2:computeRoutes'

لمزيد من المعلومات حول أنواع نقاط الطريق وخياراتها، يُرجى الاطّلاع على أنواع نقاط الطريق وخياراتها.