تحويل الدرجات والدقائق العشرية إلى DMS
تقع صيغة الدرجات والدقائق العشرية بين الدرجات العشرية وصيغة الدرجات والدقائق والثواني الكاملة.
شغّل الأداة مجانًا
تستقبل هذه الأداة عددًا صحيحًا للدرجات، ودقائق عشرية، وحرف نصف الكرة، ثم تفصل قيمة الدقائق إلى دقائق صحيحة وثوانٍ. وتعيد DMS موحّدًا، ومحور الإحداثي، والإشارة، وإحداثيًا منسقًا، وقيمة تحقق بالدرجات العشرية ذات الإشارة. تعتمد العملية على حساب حتمي وتتحقق من الحدود الجغرافية لخط العرض وخط الطول، ولذلك تلائم سجلات GPS وأعمال المساحة والملاحة ومسارات التنظيف الآلي لبيانات الإحداثيات.
كيفية تحويل الجزء العشري من الدقيقة إلى ثوانٍ
تحافظ صيغة الدرجات والدقائق العشرية، المعروفة اختصارًا باسم DDM، على الدرجات كعدد صحيح وتعبّر عن الدقائق بكسر عشري. للتحويل إلى درجات ودقائق وثوانٍ، أبقوا الدرجات كما هي، وخذوا الجزء الصحيح من decimal_minutes ليكون دقائق DMS، ثم اضربوا الجزء العشري المتبقي في ستين. فعلى سبيل المثال، تتضمن ست وعشرون فاصلة ثمانية وسبعون دقيقة عشرية ستًا وعشرين دقيقة صحيحة. وعند ضرب الجزء المتبقي، وهو صفر فاصلة ثمانية وسبعون، في ستين تكون النتيجة ستًا وأربعين فاصلة ثمانية من الثواني. ويحتفظ الإحداثي الناتج بحرف نصف الكرة المدخل. تقرّب الأداة الثواني إلى ست منازل عشرية كي لا تظهر بقايا حساب الفاصلة العائمة المعتادة في JSON منظم. وإذا بلغ التقريب ستين ثانية تمامًا، تُرحّل القيمة إلى الدقائق؛ وإذا بلغت الدقائق ستين، تُرحّل إلى الدرجات. لذلك لا تتضمن النتيجة الناجحة مكوّنًا غير صالح مقداره ستون ثانية أو ستون دقيقة. وتعرض الاستجابة الصيغة الحسابية لتسهيل المراجعة في الدروس واختبارات المطابقة وسجلات ترحيل البيانات. لا تبحث الأداة عن موقع، ولا تحوّل المرجع الجيوديسي أو الإسقاط، ولا تجري ترميزًا جغرافيًا؛ بل تغيّر تنسيق زاوية جغرافية واحدة بحساب ثابت فقط.
إدخال الدرجات والدقائق ونصف الكرة بطريقة صحيحة
أرسلوا degrees كعدد صحيح غير سالب، وdecimal_minutes كقيمة محدودة لا تقل عن صفر وتقل حصرًا عن ستين. حدّدوا الاتجاه في hemisphere بدل وضع إشارة سالبة على الدرجات: يشير N وS إلى خط العرض، بينما يشير E وW إلى خط الطول. تمنع قاعدة الإشارة الموحدة هذه المدخلات الملتبسة، مثل الجمع بين درجات سالبة وحرف الغرب. الحد الأقصى لخط العرض تسعون درجة، ولخط الطول مئة وثمانون درجة. وعند أي من الحدين يجب أن تكون الدقائق العشرية صفرًا، لأن أي قيمة إضافية ستتجاوز القطب أو حد خط الزوال المقابل. تُحوّل الحروف الصغيرة إلى كبيرة، ويُرفض أي حرف آخر. تتضمن الاستجابة الناجحة درجات صحيحة، ودقائق صحيحة، وثواني مقرّبة، ونصف كرة موحّدًا، ومحورًا، وإشارة، ونص DMS سهل القراءة، وحقل signed_decimal_degrees للتحقق المستقل. تعطي إحداثيات الجنوب والغرب قيمة سالبة، وإحداثيات الشمال والشرق قيمة موجبة. يستخدم المتصفح وواجهة API الدالة الصافية نفسها، ولذلك تعطي المدخلات المتطابقة مخرجات متطابقة دون تأثر بالشبكة أو الإعدادات المحلية أو العشوائية أو الوقت الحالي. تبلغ كلفة كل عنصر ناجح عبر API مقدار $0.002، بينما يتيح مشغّل الصفحة عمليات التحويل التفاعلية السريعة مجانًا.
استخدام تحويل DDM إلى DMS في مسارات العمل العملية
تظهر صيغة DDM كثيرًا في أجهزة GPS المحمولة، والدفاتر الميدانية، ونقاط المسار البحرية، ومواد الطيران، والنماذج التي تحتاج دقة أعلى من الدقائق الصحيحة من دون تخصيص عمود كامل للثواني. وما زالت صيغة DMS شائعة في الإحداثيات المنشورة، ووصف المساحة، والتمارين التعليمية، والتقارير الموجهة للقراءة البشرية؛ لذلك يُعد التحويل بين الصيغتين مهمة اعتيادية لتوحيد البيانات. في مسار البيانات الميدانية، احتفظوا بقيم DDM الأصلية إلى جانب مكوّنات DMS المعادة، حتى يتمكن المراجعون من إعادة عملية الفصل والتمييز بين تغيير التنسيق وتغيير الموقع المقاس. وعند ترحيل جدول بيانات، استدعوا القدرة مرة لخط العرض ومرة لخط الطول، مع إبقاء حرف نصف الكرة الصحيح في كل صف. وفي التعليم، قارنوا الثواني المعادة بالحساب اليدوي المتمثل في ضرب كسر الدقيقة في ستين، ثم استخدموا signed_decimal_degrees لشرح ارتباط الاتجاهات الأساسية بالإشارات. تعالج الأداة زاوية إحداثية واحدة في كل عنصر؛ فهي لا تحلل زوجًا حر الصياغة، ولا تستنتج نصف الكرة، ولا تحوّل المراجع الجيوديسية، ولا ترمّز أسماء الأماكن جغرافيًا. قبل أتمتة استيراد كبير، اختبروا حالة الحد عند تسعين درجة شمالًا وصفر دقيقة، وحالة غير صالحة عند ستين دقيقة. يؤكد ذلك أن أعمدة المصدر لم تخلط بين الدرجات العشرية والدقائق العشرية والثواني. تلائم الاستجابة الحتمية اختبارات المطابقة وسجلات التدقيق وعمليات ETL القابلة للتكرار بسعر $0.002 لكل طلب API ناجح.
حالات الاستخدام
توحيد ملاحظات أجهزة GPS المحمولة
حوّلوا نقاط DDM المسجلة ميدانيًا إلى مكوّنات DMS معيارية للتقارير وقوائم الإحداثيات المشتركة.
إعداد وثائق المساحة والملاحة
افصلوا كسور الدقائق إلى ثوانٍ مع الحفاظ على حرف نصف الكرة الصحيح لخط العرض أو الطول.
مراجعة تمارين تحويل الإحداثيات
قارنوا الحساب اليدوي بدقائق وثوانٍ وإشارة وقيمة تحقق عشرية حتمية.
الأسئلة الشائعة
كيف تُحوّل الدقائق العشرية إلى ثوانٍ؟
خذوا الجزء العشري بعد حذف الدقائق الصحيحة واضربوه في 60. في 26.78 دقيقة، تعطي 0.78 مضروبة في 60 مقدار 46.8 ثانية.
هل يمكن أن تساوي الدقائق العشرية 60؟
لا. يجب ألا تقل عن 0 وأن تكون أقل من 60. وتُنقل قيمة 60 إلى مكوّن الدرجات.
هل يجب أن تكون الدرجات سالبة للجنوب أو الغرب؟
لا. أرسلوا درجات صحيحة غير سالبة واستخدموا S أو W لنصف الكرة. تعيد الاستجابة signed_decimal_degrees بقيمة سالبة.
كيف تُقرّب الثواني؟
تُقرّب الثواني بصورة حتمية إلى ست منازل عشرية. وإذا بلغت النتيجة 60، تُرحّل إلى الدقيقة التالية.
ما تكلفة التحويل؟
أداة المتصفح مجانية. يعالج كل طلب API ناجح عنصرًا واحدًا بسعر الأساس المنشور $0.002.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/geo/ddm-to-dms \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"degrees":40,"decimal_minutes":26.78,"hemisphere":"N"}'const res = await fetch("https://api.kit.forhosting.com/geo/ddm-to-dms", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"degrees": 40,
"decimal_minutes": 26.78,
"hemisphere": "N"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/ddm-to-dms",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"degrees": 40,
"decimal_minutes": 26.78,
"hemisphere": "N"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/ddm-to-dms", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"degrees":40,"decimal_minutes":26.78,"hemisphere":"N"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"degrees":40,"decimal_minutes":26.78,"hemisphere":"N"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/ddm-to-dms", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"degrees": 40,
"decimal_minutes": 26.78,
"hemisphere": "N"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.ddm_to_dms",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |