حساب طول المقطع الجيوديسي
قِس أقصر طريق على سطح الأرض بين إحداثيتين: من (40.7128، -74.006) إلى (51.5074، -0.1278) تبلغ المسافة 5570.229874 كم، وتظهر بالأمتار والأميال أيضًا. وتُعامَل الأرض ككرة بنصف قطر متوسط. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- Lat1
- 40.7128
- Lon1
- -74.006
- Lat2
- 51.5074
- Lon2
- -0.1278
- الأمتار
- 5,570,229.873657
- كيلومترات
- 5,570.229874
- أميال
- 3,461.180378
تقيس حاسبة طول المقطع الجيوديسي أقصر مسار على دائرة عظمى بين موضعين محددين بخط العرض وخط الطول بصيغة عشرية. وتعيد المسافة نفسها بالأمتار والكيلومترات والأميال، لتصبح جاهزة للخرائط والتقارير وقواعد التحقق والواجهات دون تحويل إضافي. الحساب حتمي ويستخدم نصف قطر أرضي متوسطا ثابتا ولا يتصل بخدمة خرائط.
حددوا المقطع بنقطتي نهاية صالحتين
أدخلوا كل قيمة كعدد عشري، على أن يقع خط العرض بين سالب تسعين وموجب تسعين درجة، وخط الطول بين سالب مئة وثمانين وموجب مئة وثمانين. تستعمل خطوط العرض الجنوبية وخطوط الطول الغربية الإشارة السالبة. حافظوا على القيم الأربع ضمن نظام الإحداثيات الجغرافية التقليدي نفسه، ولا ترسلوا إحداثيات خرائط مسقطة أو نصا بصيغة الدرجات والدقائق والثواني أو مسافات.
تصف المنازل العشرية الإضافية موضعا أدق، مع بقاء النتيجة تقريبا كرويا للأرض. لا يغير ترتيب النهايتين الطول، ولذلك يؤدي تبديل الزوجين إلى الجواب نفسه. تعطي النهايتان المتطابقتان صفرا صحيحا في جميع الوحدات.
يرفض التحقق القيم المفقودة والنصوص والأعداد غير المنتهية والإحداثيات الخارجة عن نطاقها بدلا من تخمين مقصدكم. ويفيد هذا السلوك الصارم مسارات العمل المؤتمتة، إذ يوقف السجلات المشوهة قبل وصول مسافة خاطئة إلى عميل أو جدول مسارات أو تقرير مكاني.
افهموا حساب الدائرة العظمى
تحول الحاسبة كل إحداثي من الدرجات إلى الراديان، ثم تطبق علاقة Haversine لإيجاد الزاوية المركزية بين النهايتين. ويعطي ضرب تلك الزاوية في نصف قطر الأرض المتوسط الثابت البالغ 6,371,008.8 متر طول مقطع الدائرة العظمى. تمثل الدائرة العظمى أقصر مسار فوق أرض كروية مثالية، لا وترا مستقيما يمر داخل الكوكب ولا طريقا للسيارات أو المشاة أو القطارات.
تلائم هذه الطريقة القياسات الجغرافية العامة وفحوص القرب والتعليم والتطبيقات التي تفضل نموذجا كرويا متسقا عالميا على الاعتماد على خدمة توجيه بعيدة. ولأن الأرض الحقيقية شكل إهليلجي مفلطح، كما يضيف التضاريس ارتفاعا، فقد يختلف الرقم عن جيوديسيا إهليلجية بدقة المساحة أو عن مسافة مقيسة على سطح الأرض. استخدموا طريقة إهليلجية أو مراعية للتضاريس عندما يكون لهذه الفروق أثر جوهري في القرار.
استخدموا الوحدات المعادة بأمان
تتضمن الاستجابة الأمتار والكيلومترات والأميال كحقول رقمية، ولذلك يمكنكم اختيار وحدة العرض دون إعادة الحساب الجغرافي. تلائم الأمتار المسافات القصيرة ومقارنات الحدود، وتناسب الكيلومترات الملخصات الإقليمية أو الدولية، وتخدم الأميال الواجهات الموجهة إلى جمهور يستخدم الميل البري. خزّنوا حقلا معياريا واحدا عندما ينبغي للحسابات اللاحقة تجنب تراكم فروق التقريب، وعدوا الحقول الأخرى تحويلات جاهزة للعرض.
لا تعيد الاستجابة إحداثيات النهايتين، فاحتفظوا بالمدخل مع النتيجة إذا كان سجل التدقيق مطالبا بإظهار المواضع المقيسة. في المعالجة الدفعية، استدعوا القدرة مرة لكل مقطع واربطوا كل استجابة بمعرف السجل المناسب في نظامكم. لا يصل الحساب إلى خرائط حية أو حركة مرور أو حدود أو قيود مسار؛ فقابليته للتكرار ناتجة فقط من الإحداثيات المقدمة والثوابت المحددة.
قبل فرض حد في قاعدة عمل، اختاروا هامش سماح يناسب دقة الإحداثيات والنموذج الكروي، ولا تعاملوا القيم المقربة كأنها ملاحظات مساحية دقيقة.
حالات الاستخدام
فحص حد القرب
قيسوا ما إذا كان موضعان مخزنان متقاربين تقريبا بما يكفي لتطبيق قاعدة تعتمد على الموقع.
عنونة مقطع على الخريطة
احسبوا مسافة مستقرة لخط يصل بين علامتين واعرضوا الوحدة المفضلة.
التحقق من السجلات الجغرافية
ميزوا أزواج الإحداثيات ذات التباعد الكبير أو الصغير على نحو غير متوقع قبل استيرادها.
الأسئلة الشائعة
هل هذه مسافة طريق أو مشي؟
لا. إنها مسافة دائرة عظمى فوق نموذج كروي للأرض ولا تتبع شبكة نقل.
أي نوع من الأميال تعيده الحاسبة؟
يستخدم حقل الأميال الميل البري الدولي، وفي كل ميل 1,609.344 متر بالضبط.
ماذا يحدث عندما تتطابق النهايتان؟
تعيد الحاسبة صفرا من الأمتار وصفرا من الكيلومترات وصفرا من الأميال.
لماذا قد تختلف النتيجة عن قياس مساحي؟
لأنها تستخدم نموذجا كرويا بنصف قطر متوسط ثابت، لا شكلا إهليلجيا أو نموذج ارتفاع أو مسارا مقيسا على الأرض.
هل يؤثر ترتيب النقطتين في النتيجة؟
لا. تبديل الزوج الأول من الإحداثيات بالزوج الثاني يعطي الطول نفسه تمامًا، لذا يمكنك إدخال النهايتين بالترتيب الذي تستخدمه بياناتك.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/geo/segment-length \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"lat1":40.7128,"lon1":-74.006,"lat2":51.5074,"lon2":-0.1278}'const res = await fetch("https://api.kit.forhosting.com/geo/segment-length", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"lat1": 40.7128,
"lon1": -74.006,
"lat2": 51.5074,
"lon2": -0.1278
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/segment-length",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"lat1": 40.7128,
"lon1": -74.006,
"lat2": 51.5074,
"lon2": -0.1278
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/segment-length", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"lat1":40.7128,"lon1":-74.006,"lat2":51.5074,"lon2":-0.1278}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"lat1":40.7128,"lon1":-74.006,"lat2":51.5074,"lon2":-0.1278}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/segment-length", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"lat1": 40.7128,
"lon1": -74.006,
"lat2": 51.5074,
"lon2": -0.1278
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.segment_length",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
أدخلوا إحداثيات نقطة البداية ونقطة النهاية للحصول على قياس واضح وقابل للتكرار.
حددوا المقطع بنقطتي نهاية صالحتين
يبدأ المقطع عند الإحداثي الذي تصفه lat1 وlon1 وينتهي عند الإحداثي الذي تصفه lat2 وlon2.
افهموا حساب الدائرة العظمى
بعد ذلك يحول القياس نفسه إلى كيلومترات وأميال برية، وتقرب المخرجات الثلاثة إلى ست منازل عشرية للحصول على نتائج JSON مستقرة.
استخدموا الوحدات المعادة بأمان
تبلغ كلفة التنفيذ عبر API مقدار $0.002 لكل عنصر.
أسئلة تقنية
ما كلفة عملية حساب واحدة عبر API؟
تبلغ كلفة حساب كل مقطع $0.002.