يتناول هذا المستند كيفية تخصيص الخطوط المتعددة للمسارات للخريطة التي تستخدمها في تطبيق تتبُّع الرحلة المستنِد إلى الويب والمخصّص للمستهلكين.
باستخدام حزمة Consumer SDK، يمكنك التحكّم في مستوى ظهور الخطوط المتعددة للمسار أو تنسيقها،
وذلك لمسار رحلة على الخريطة. تنشئ حزمة تطوير البرامج (SDK) كائن
google.maps.Polyline
لكل زوج من الإحداثيات في المسار
النشط أو المتبقي للرحلة. تطبق المكتبة بعد ذلك هذه التخصيصات
في حالتين:
- قبل إضافة الكائنات إلى الخريطة
- عندما تتغير البيانات المستخدمة للكائنات
الخطوط المتعددة لمسار النمط
مثلما يمكنك تصميم العلامات، يمكنك توجيه الخطوط المتعددة باستخدام معلمات التخصيص. من هناك، يمكنك ضبط التصميم باستخدام إحدى الطريَقتَين التاليتَين:
- الأبسط: استخدِم
PolylineOptions
للتطبيق على جميع عناصرPolyline
المتطابقة عند إنشائها أو تعديلها. - متقدمة: حدد دالة تخصيص.
تسمح دوال التخصيص بتصميم العناصر بشكل فردي استنادًا إلى
البيانات التي ترسلها Fleet Engine. ويمكن أن تغيّر هذه الدالة نمط كل كائن استنادًا إلى الحالة الحالية للرحلة، على سبيل المثال، تلوين عنصر
Polyline
بلون أغمق أو جعله أكثر سمكًا عندما تسير المركبة ببطء. يمكنك أيضًا الانضمام إلى مصادر من خارج Fleet Engine وتنسيق عنصرPolyline
استنادًا إلى هذه المعلومات.
مَعلمات التخصيص
عند تصميم الخطوط المتعددة للمسار، يمكنك استخدام المَعلمات المقدَّمة في
FleetEngineTripLocationProviderOptions
. توفر هذه المعلمات حالات المسارات المختلفة في رحلة المركبة، على النحو التالي:
- المسارات التي سبق أن قطعتها: استخدِم
takenPolylineCustomization
. - مسار التنقّل بشكل نشط: استخدِم
activePolylineCustomization
. - مسار لم يتم التنقّل فيه بعد: استخدِم
remainingPolylineCustomization
.
استخدام PolylineOptions
يوضّح المثال التالي كيفية ضبط تنسيق عنصر Polyline
باستخدام PolylineOptions
. اتّبِع هذا النمط لتخصيص تنسيق
أي عنصر Polyline
باستخدام أي من تخصيصات الخطوط المتعددة المُدرَجة سابقًا.
JavaScript
activePolylineCustomization = {
strokeWidth: 5,
strokeColor: 'black',
};
TypeScript
activePolylineCustomization = {
strokeWidth: 5,
strokeColor: 'black',
};
استخدام دوالّ التخصيص لتنسيق الخطوط المتعددة للمسار
يوضّح المثال التالي كيفية ضبط أسلوب لمسار نشط
خطّ متعدد الأضلاع. اتّبِع هذا النمط لتخصيص نمط أي عنصر Polyline
باستخدام أي من معلمات تخصيص الخطوط المتعددة للمسار التي تم إدراجها سابقًا.
JavaScript
// Color the route polyline objects in green if the vehicle is nearby.
activePolylineCustomization =
(params) => {
const distance = params.trip.remainingWaypoints[0].distanceMeters;
if (distance < 1000) {
// params.polylines contains an ordered list of Polyline objects for
// the path.
for (const polylineObject of params.polylines) {
polylineObject.setOptions({strokeColor: 'green'});
}
}
};
TypeScript
// Color the route Polyline objects in green if the vehicle is nearby.
activePolylineCustomization =
(params: TripPolylineCustomizationFunctionParams) => {
const distance = params.trip.remainingWaypoints[0].distanceMeters;
if (distance < 1000) {
// params.polylines contains an ordered list of Polyline objects for
// the path.
for (const polylineObject of params.polylines) {
polylineObject.setOptions({strokeColor: 'green'});
}
}
};
التحكّم في مستوى ظهور الخطوط المتعددة للمسار
تكون جميع عناصر Polyline
مرئية تلقائيًا. ولجعل كائن Polyline
غير مرئي، اضبط السمة visible
الخاصة به على النحو التالي:
JavaScript
remainingPolylineCustomization = {visible: false};
TypeScript
remainingPolylineCustomization = {visible: false};