حالات الاستخدام

إنشاء مخطط ارتفاع لتطبيق ركوب الدراجات

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

كانت المسارات موجودة في التطبيق أصلًا على شكل سلسلة من الإحداثيات، يولّدها محرك التوجيه الخاص به من نقطة بداية ونقطة نهاية. وما كان ينقصه هو الارتفاع عند كل نقطة من تلك النقاط. وقد حلّت /v1/elevation هذه المشكلة مباشرة: أرسل إليها قائمة من الإحداثيات، سواء أكانت نقطة واحدة أم سلسلة طويلة على امتداد مسار، فتعيد ارتفاع سطح الأرض لكل منها. فالمسار الذي يضم مئتي نقطة على امتداده عاد بمئتي قيمة ارتفاع، مرتبة بالترتيب نفسه الذي أُرسلت به، جاهزة للرسم كمخطط مقابل المسافة المقطوعة.

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

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

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

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

الارتفاع من نقاط النهاية القليلة التي يسهل فيها تقديم مثال حقيقي: فرحلة ساحلية ستُظهر قيم ارتفاع قريبة من مستوى سطح البحر في نقاطها الأولى وقيمًا متزايدة مع صعود المسار نحو الداخل، وهو مخطط يعني شيئًا لراكب الدراجة من النظرة الأولى. تفاصيل صيغة الطلب وحدود النقاط متاحة في /docs/elevation-lookup/.