محوّل DMS إلى درجات عشرية
تصبح 40° 26′ 46.8″ N هي 40.446333333333: الدرجات زائد الدقائق مقسومة على 60 زائد الثواني مقسومة على 3600، والإشارة تأتي من حرف نصف الكرة وحده، فيخرج الجنوب والغرب بالسالب. مفيد لرقمنة الخرائط الورقية. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- الدرجات
- 40
- مكوّن الدقائق من DMS
- 26
- مكوّن الثواني من DMS
- 46.8
- نصف الكرة
- N
- المحور
- latitude
- الإشارة
- 1
- الدرجات العشرية
- 40.4463333333
- القيمة العشرية
- 40.4463333333
يحتاج رسامو الخرائط الذين يحوّلون الخرائط الورقية إلى صيغة رقمية، والطلاب الذين يراجعون واجباتهم، وخطوط المعالجة التي تستقبل سلاسل DMS من فهارس الأسماء الجغرافية إلى القاعدة الحتمية نفسها دون فتح جدول بيانات.
كيف تتحول صيغة DMS وحروف نصف الكرة إلى درجات عشرية ذات إشارة
تُكتب الزوايا الجغرافية على الورق دائمًا تقريبًا كدرجات ودقائق وثوانٍ غير سالبة يتبعها حرف اتجاه واحد. يُعامل الشمال والشرق على أنهما موجبان، والجنوب والغرب على أنهما سالبان. يُجمَّع المقدار المطلق بالصيغة الستينية القياسية: المقدار العشري يساوي الدرجات زائد الدقائق مقسومة على ستين زائد الثواني مقسومة على ثلاثة آلاف وستمئة.
ثم يضرب حرف نصف الكرة ذلك المقدار في موجب واحد عند N أو E، أو في سالب واحد عند S أو W، منتجًا قيمة الدرجة العشرية ذات الإشارة المستخدمة في حقول خطوط العرض والطول في نظام WGS84. إبقاء الدرجات غير سالبة وحصر الإشارة في الحرف وحده يتجنب خطأ السالب المزدوج الشائع، حيث يخزّن شخص ما −40° ويحدد S في الوقت نفسه.
يُشترط أن تقع الدقائق والثواني في الفترة المغلقة من صفر إلى ستين شاملةً الطرفين؛ فقيم مثل خمس وسبعين دقيقة أو ثوانٍ سالبة تُرفض بدلًا من أن تُنقل بصمت إلى المكوّن التالي. يستخدم خط العرض الحرفين N وS، ويستخدم خط الطول الحرفين E وW؛ كما توسم الاستجابة axis بأنه latitude أو longitude ليتمكن العميل من التحقق من أن خط معالجة خط العرض لم يستلم حرف E أو W عن طريق الخطأ.
يعيد مسار التحقق حساب المقدار والإشارة بالتقريب الثابت نفسه المستخدم في الحقول المنشورة، لذا تتضمن الاستجابة الناجحة دائمًا خطوات يمكنك التحقق منها في الاختبارات أو التقارير المخبرية.
نصائح عملية وحدود وعمليات بحث ذات صلة
يُفضَّل إرسال أرقام للدرجات والدقائق والثواني عندما تتحكم في العميل؛ فالسلاسل الرقمية لا تُقبل إلا إذا طابقت نمطًا رقميًا منتهيًا صارمًا. إذا كانت سلسلة المصدر تتضمن أصلًا علامة سالب قبل الدرجات، فاحذف السالب وحوّله إلى S أو W قبل استدعاء هذه الأداة حتى يبقى الحرف المصدر الوحيد الموثوق للإشارة. عند تحويل جدول إلى صيغة رقمية، نفّذ استدعاءً لكل خط عرض وآخر لكل خط طول بدلًا من حشو كليهما في طلب واحد — فهذه القدرة تحوّل ثلاثية DMS واحدة في كل مرة.
أبقِ الدقائق والثواني بين صفر وستين؛ فإذا أنتج المسجّل خمسًا وسبعين دقيقة، فطبّق التسوية أو الرفض في المراحل السابقة بدلًا من الأمل في نقل صامت. تستهدف هذه الصفحة الباحثين عن محوّل من DMS إلى درجات عشرية، أو تحويل إحداثيات بحرف نصف الكرة N S E W، أو تحويل درجات ودقائق وثوانٍ إلى صيغة عشرية عبر الإنترنت؛ وهي ليست محللًا لسلاسل حرة الصيغة، ولا منسّقًا عكسيًا من العشري إلى DMS، ولا مسقطًا لأنظمة UTM أو geohash.
فضّل هذه القدرة عندما تتوفر لديك أصلًا مكونات DMS رقمية وحرف اتجاه واضح؛ أما إذا كان مصدرك إسقاطًا خرائطيًا أو قيمة عشرية واحدة ذات إشارة، فاستخدم أداة geo المناسبة بدلًا منها.
حالات الاستخدام
تحويل DMS من الخرائط الورقية إلى قيم عشرية لنظم GIS
يدخل رسامو الخرائط الدرجات والدقائق والثواني وحروف N/S/E/W من الأوراق الورقية ويكتبون خطوط عرض وطول عشرية ذات إشارة في سمات GeoJSON أو ملفات shapefile.
الأسئلة الشائعة
كيف تتحول صيغة DMS إلى درجات عشرية؟
احسب المقدار بالصيغة D + M/60 + S/3600، ثم اضربه في +1 عند N أو E وفي −1 عند S أو W.
ما حروف نصف الكرة المقبولة؟
الحروف N وS وE وW (دون حساسية لحالة الأحرف). يشير N/S إلى خط العرض، ويشير E/W إلى خط الطول.
ماذا يحدث إذا كانت الدقائق أو الثواني خارج 0–60؟
يجب أن تقع الدقائق والثواني في الفترة المغلقة من 0 إلى 60 شاملةً الطرفين.
هل يمكن أن تكون الدرجات سالبة؟
لا. يجب أن تكون الدرجات غير سالبة؛ استخدم نصف الكرة S أو W للحصول على نتيجة سالبة الإشارة حتى يملك الحرف وحده الإشارة.
هل يجب إدخال الدقائق والثواني دائمًا؟
لا، يمكن ترك الدقائق والثواني فارغة وتُحسب عندها صفرًا. يكفي إدخال الدرجات وحرف نصف الكرة لتحويل درجة صحيحة إلى قيمة عشرية موقعة.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/geo/dms-to-decimal \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"degrees":40,"hemisphere":"N"}'const res = await fetch("https://api.kit.forhosting.com/geo/dms-to-decimal", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"degrees": 40,
"hemisphere": "N"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/geo/dms-to-decimal",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"degrees": 40,
"hemisphere": "N"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/geo/dms-to-decimal", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"degrees":40,"hemisphere":"N"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"degrees":40,"hemisphere":"N"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/geo/dms-to-decimal", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"degrees": 40,
"hemisphere": "N"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "geo.dms_to_decimal",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
max_abs_degrees | 1000000000000 |
min_component | 0 |
max_minutes_seconds | 60 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
يحوّل محوّل DMS إلى درجات عشرية الترميز التقليدي المستخدم في المساحة والخرائط إلى الزاوية العشرية ذات الإشارة التي تتوقعها أنظمة GIS وواجهات API الحديثة. أدخل الدرجات الصحيحة والدقائق والثواني الاختيارية وحرف نصف الكرة — N أو S لخط العرض، وE أو W لخط الطول — فيعيد الأداة قيمة decimal_degrees المساوية للمقدار ذي الإشارة D زائد M مقسومًا على ستين زائد S مقسومًا على ثلاثة آلاف وستمئة، مع أخذ الإشارة من الحرف وحده. يجب أن تبقى الدقائق والثواني داخل الفترة المغلقة من صفر إلى ستين؛ وأي قيمة خارج هذا النطاق تُرفض مع invalid_input حتى لا تتحول دفاتر المسح الخاطئة إلى نقاط خاطئة بصمت. المعالجة حسابية بحتة — بلا شبكة وبلا بذور عشوائية وبلا اعتماد على الساعة — لذا يعيد المنفّذ المجاني في المتصفح وواجهة API المدفوعة مسبقًا JSON نفسه بعد تقريب ثابت إلى اثني عشر رقمًا عشريًا في كل مرة تستدعيها بسعر $0.002 لكل طلب ناجح.
كيف تتحول صيغة DMS وحروف نصف الكرة إلى درجات عشرية ذات إشارة
يطابق هذا النطاق الصارم الطريقة التي تعلّم بها كثير من الأدوات الميدانية وأوراق العمل المدرسية هذه الصيغة، ويطابق عقد invalid_input الذي تنشره هذه القدرة.
كيفية استدعاء API وما الذي يعود به
يقبل حرف نصف الكرة القيم N أو S أو E أو W بأي حالة أحرف شائعة؛ وأي سلسلة أخرى تفشل في التحقق. أرسل جسم JSON يتضمن الدرجات المنتهية غير السالبة المطلوبة (بالاسمين البديلين d وdeg)، وحرف نصف الكرة المطلوب (بالأسماء البديلة hemi وdir وdirection وcardinal)، والدقائق والثواني الاختيارية (بالأسماء البديلة m وmin وarcmin وs وsec وarcsec) التي تكون قيمتها الافتراضية صفرًا عند إغفالها. يجب أن تبقى الدرجات المطلقة ضمن الحد المنشور البالغ تريليونًا حتى تبقى النواتج الوسيطة منتهية بالدقة المزدوجة IEEE على Worker وفي المتصفح. عند النجاح، تعكس الاستجابة الدرجات والدقائق والثواني المقربة، وتضبط hemisphere على الحرف الكبير الموحّد، وaxis على latitude أو longitude، وsign على موجب واحد أو سالب واحد، وdecimal_degrees وdecimal على القيمة المقربة ذات الإشارة نفسها، وdms على سلسلة عرض مدمجة تتضمن الحرف، وmethod على dms_hemisphere_to_decimal، وformula على التعبيرين الموثقين للإشارة وللنظام الستيني، وsteps على مصفوفة مرتبة من سطور التعويض. أما فشل التحقق — حقول مفقودة، أو أرقام غير منتهية، أو درجات سالبة، أو دقائق أو ثوانٍ خارج النطاق من صفر إلى ستين، أو حرف نصف كرة غير معروف، أو مقدار محوّل غير منتهٍ — فيعيد invalid_input ولا يُحتسب أبدًا. التسعير ثابت بقيمة $0.002 لكل طلب ناجح بالوحدة item وسعر وحدة هامشي صفري.
نصائح عملية وحدود وعمليات بحث ذات صلة
أمثلة التدريس سهلة: أربعون درجة وست وعشرون دقيقة وست وأربعون فاصلة ثمانية ثوانٍ شمالًا تعطي خط عرض موجبًا قريبًا من أربعين فاصلة أربعة أربعة؛ والأرقام نفسها مع W تعطي خط طول سالبًا؛ ودقائق تساوي خمسًا وسبعين توضّح مسار invalid_input الصارم. المهام الفاشلة التي تعيد invalid_input لا تستهلك الرصيد المدفوع مسبقًا، مما يُبقي النصوص الاستكشافية رخيصة عندما يمرّر المتعلمون عمدًا دقائق خارج النطاق. فحوص الذهاب والإياب بسيطة: أعد حساب D زائد M مقسومًا على ستين زائد S مقسومًا على ثلاثة آلاف وستمئة يدويًا، وطبّق إشارة نصف الكرة، ثم تأكد أنها تساوي قيمة decimal_degrees المنشورة ضمن التقريب نفسه إلى اثني عشر رقمًا عشريًا الذي يستخدمه Worker.
حالات التكامل
مراجعة الواجبات في التحويل الستيني
يقارن الطلاب نتائج D + M/60 + S/3600 المحسوبة يدويًا وإشارات نصف الكرة مع حقل decimal_degrees حتمي قبل تسليم التقارير المخبرية.
تسوية ETL لتغذيات فهارس الأسماء الجغرافية
تحوّل خطوط المعالجة أعمدة DMS القادمة من المورّدين وحروف الاتجاهات إلى قيم عشرية ذات إشارة قبل الترميز الجغرافي، مع مصائد invalid_input للدقائق أو الثواني الخارجة عن النطاق.
أسئلة تقنية
هل محوّل DMS إلى درجات عشرية مجاني؟
أداة المتصفح مجانية وتعمل محليًا. أما استدعاءات API فتستخدم رصيد KIT المدفوع مسبقًا بسعر $0.002 لكل طلب ناجح؛ والمهام الفاشلة لا تُحتسب أبدًا.