تعلّم أجزاء الخريطة قبل أن تقود الآلة
مرحبًا بك في ورشة خرائط Atlasemoji. تشرح هذه الصفحة كيفية عمل الخرائط — ليس فقط كيفية النظر إليها، بل كيفية بنائها ووصفها ونشرها، وفي النهاية التفاعل معها من خلال أدوات مثل Developer Workbench و API Explorer.
بحلول الوقت الذي تنتهي فيه من هذه الصفحة، ستفهم ما هي الخريطة حقًا، وكيف يتم وصف الأرض باستخدام خطوط العرض والطول، وكيف تساعد الأقمار الصناعية في تحديد الموقع، وكيف تصف أجهزة الكمبيوتر أشكال الخرائط، وكيف تتحول هذه الأشكال إلى مسارات ومناطق، وكيف ينظم Atlasemoji عناصر الخريطة، وكيف يمكن للمطورين العمل مع هذه العناصر من خلال واجهة برمجة التطبيقات.
🌍 الخطوة 1 — ما هي الخريطة حقًا
الخريطة هي نموذج للعالم. وبدلًا من إظهار الأرض كلها بحجمها الكامل، فإنها تمثل الأماكن باستخدام رموز.
- النقاط تُظهر المواقع.
- الخطوط تُظهر الحركة أو الاتصال.
- الأشكال تُظهر المناطق.
تجمع الخرائط أيضًا طبقات من المعلومات. قد تُظهر خريطة واحدة المدن والطرق. وقد تُظهر أخرى مسارات المشي، أو هجرة الحياة البرية، أو أنظمة الطقس، أو مسارًا تاريخيًا. تستطيع الخرائط الرقمية الحديثة أن تجمع كل هذه الأفكار في وقت واحد.
لهذا يمكن لنظام الخرائط نفسه أن يُظهر خط حافلة، أو حدود حريق غابات، أو خطة لعب كرة قدم، أو مسار مشي، أو رحلة تاريخية.
📍 الخطوة 2 — خطوط العرض والطول
يمكن وصف كل موقع على الأرض باستخدام رقمين: خط العرض وخط الطول.
يقيس خط العرض مدى بُعدك شمالًا أو جنوبًا.
يقيس خط الطول مدى بُعدك شرقًا أو غربًا.
مثال: سياتل
- خط العرض: 47.6062
- خط الطول: -122.3321
معًا، يحددان هذان الرقمان مكانًا دقيقًا واحدًا على الأرض.
🛰 الخطوة 3 — كيف تعرف الهواتف مكانك
يقول كثير من الناس “GPS”، لكن GPS هو مجرد نظام ملاحة بالأقمار الصناعية واحد.
تستخدم الهواتف وأجهزة الملاحة GNSS، وهو اختصار لـ Global Navigation Satellite System.
تشمل الأنظمة الرئيسية:
- GPS — الولايات المتحدة
- Galileo — أوروبا
- GLONASS — روسيا
- BeiDou — الصين
- NavIC — الهند
- QZSS — اليابان
يستمع هاتفك إلى إشارات من عدة أقمار صناعية. ومن خلال قياس المدة التي تستغرقها تلك الإشارات للوصول، يمكنه حساب موقعك بدقة كبيرة.
🗺 الخطوة 4 — تحتاج الخرائط إلى لغة بيانات
تحتاج أجهزة الكمبيوتر إلى طريقة ثابتة لوصف الأماكن. وهناك تنسيقان مهمان يساعدان على جعل ذلك ممكنًا:
- JSON
- GeoJSON
JSON هي طريقة عامة لتنظيم المعلومات. أما GeoJSON فهي JSON تحتوي على جغرافيا بداخلها. ومعًا يجعلان من الممكن وصف عناصر الخريطة بوضوح واتساق.
📦 الخطوة 5 — JSON: قائمة الإنترنت المنظمة
JSON اختصار لـ JavaScript Object Notation. وهي طريقة منظمة لترتيب المعلومات حتى تتمكن أجهزة الكمبيوتر من تبادلها بسهولة.
{
"city": "Seattle",
"population": 733000,
"waterfront": true
}الأجزاء المهمة:
- الأقواس المعقوفة
{}تحتوي كائنًا. - الأقواس المربعة
[]تحتوي قائمة. - أزواج المفتاح والقيمة تبدو هكذا
"title": "Seattle".
تستخدم كثير من واجهات برمجة التطبيقات JSON لتبادل المعلومات.
🌎 الخطوة 6 — GeoJSON: JSON مع الجغرافيا
GeoJSON هي JSON تصف عناصر الخريطة. وهي تخبر الخريطة:
- ما نوع الشيء
- أين يقع
تُستخدم ثلاثة أشكال غالبًا:
- Point — موقع واحد
- LineString / Polyline — مسار
- Polygon — منطقة مغلقة
تُعد GeoJSON واحدة من أسهل الطرق لتحويل الأفكار حول الأماكن إلى بيانات تستطيع الخريطة قراءتها.
جرّب تغيير عنصر الخريطة
تلميح مفيد: ابدأ بتغيير title. ثم غيّر coordinates. ثم انتقل من نقطة إلى خط، أو من خط إلى مضلع.
ما هذا
ماذا يعني ذلك
يبدو هذا كأنه GeoJSON، لكن الشكل غير مكتمل أو غير معتاد.
الخط مجرد خط حتى تربط به معنى. وهكذا يمكن للتطبيق نفسه أن يعرض خطة لعب كرة قدم، أو مسار حافلة مدرسية، أو طريق مشي، أو طريق تجارة، أو صدعًا جيولوجيًا.
📍 نقطة
تحدد النقطة موقعًا واحدًا.
أمثلة:
- مقهى
- قمة جبل
- متحف
- موقف حافلة
{
"type": "Point",
"coordinates": [-122.3321, 47.6062]
}قاعدة مهمة: تستخدم GeoJSON خط الطول أولًا ثم خط العرض.
➖ LineString (خط متعدد)
الـ LineString هو تسلسل من النقاط المتصلة.
أمثلة:
- مسار مشي
- مسار هجرة
- خط شحن
- رحلة تاريخية
{
"type": "LineString",
"coordinates": [
[-122.3321, 47.6062],
[-122.3355, 47.6088],
[-122.3401, 47.6109]
]
}للخط بداية ونهاية.
🔺 مضلع
المضلع شكل مغلق يحدد منطقة.
أمثلة:
- حديقة
- بحيرة
- حدود مدينة
- محيط حريق غابات
{
"type": "Polygon",
"coordinates": [[
[-122.3390, 47.6050],
[-122.3300, 47.6050],
[-122.3300, 47.6110],
[-122.3390, 47.6110],
[-122.3390, 47.6050]
]]
}قاعدة مهمة: يجب أن يتطابق آخر إحداثي مع أول إحداثي لإغلاق الشكل.
📦 Feature و FeatureCollection
تظهر عناصر GeoJSON عادة داخل Feature.
{
"type": "Feature",
"properties": {
"title": "Seattle",
"emoji": "📍"
},
"geometry": {
"type": "Point",
"coordinates": [-122.3321, 47.6062]
}
}يمكن تجميع عدة عناصر معًا داخل FeatureCollection. وهذا يسمح لمجموعة بيانات واحدة بأن تتضمن أماكن ومسارات ومناطق في الوقت نفسه.
🧭 الخطوة 7 — نقاط الطريق والمسارات
نقطة الطريق هي ببساطة موقع ذو معنى.
أمثلة:
- موقع تخييم
- موقع حدث تاريخي
- نقطة قياس مسحية
- فصل في رحلة
يمكن لنقاط الطريق المتصلة معًا أن تشكل مسارًا.
قد يمثل هذا المسار طريق هجرة، أو طريق تجارة قافلة، أو رحلة برية، أو نهرًا، أو قصة تتكشف عبر الزمن.
🧱 الخطوة 8 — التجزئة الجغرافية
عندما تحتوي الخرائط على ملايين النقاط، سيكون البحث في الأرض كلها بطيئًا.
تحل التجزئة الجغرافية هذه المشكلة عبر تقسيم الكوكب إلى مربعات شبكية. ويحصل كل مربع على رمز قصير.
9q8yyغالبًا ما تشترك المواقع القريبة في بدايات رمزية متشابهة. وهذا يجعل من الأسهل على البرمجيات العثور بسرعة على البيانات القريبة.
🗂 الخطوة 9 — بيانات Atlasemoji الوصفية
ينظم Atlasemoji عناصر الخريطة باستخدام ما يسمى manifest.
الـ manifest هو وصف منظم لعنصر خريطة. ويمكن لبيان واحد أن يُنشئ عدة أسطح مفيدة:
- GeoJSON
- تضمين خريطة حي
- معاينة بطاقة بريدية
- صورة ثابتة
- استجابة API
هذا يسمح لقطعة واحدة من بيانات الخريطة أن تظهر في عدة سياقات مفيدة.
🖼 الخطوة 10 — الخرائط الثابتة مقابل الخرائط المضمنة
أحيانًا تريد خريطة تفاعلية حية.
وقد تظهر هذه داخل صفحة ويب باستخدام iframe أو عرض خريطة مخصص.
وفي أحيان أخرى تريد صورة ثابتة.
على سبيل المثال:
- معاينة على وسائل التواصل الاجتماعي
- خريطة قابلة للطباعة
- بطاقة بريدية
يدعم Atlasemoji الأسطح الحية والثابتة معًا.
⚙️ الخطوة 11 — التحدث إلى الخريطة عبر API
الـ API هي طريقة تطلب بها البرمجيات من كمبيوتر آخر أن يفعل شيئًا.
على سبيل المثال:
- إنشاء نقطة طريق
- جلب مسار
- توليد GeoJSON
- إنتاج تضمين خريطة
- عرض معاينة ثابتة
تُرسل الطلبات عادة باستخدام JSON. وغالبًا ما تعود الاستجابات أيضًا بصيغة JSON.
يوفّر Swagger، ويُسمى أيضًا OpenAPI، واجهة مرئية تسمح للمطورين باستكشاف تلك الطلبات واختبارها.
الخطوة 12 — قبل لمس الـ API
قبل أن تبدأ باستخدام Developer Workbench أو Swagger، من المفيد أن تعرف:
- كيفية قراءة JSON
- كيفية التمييز بين النقطة والخط المتعدد
- أن المضلعات يجب أن تُغلق
- أن خط الطول يأتي عادة قبل خط العرض في GeoJSON
- أن عنصر الخريطة الواحد يمكن أن يملك عدة أسطح مفيدة
عندما تتضح هذه الأفكار، تصبح واجهة API أداة إبداعية عملية.
🧪 تجارب الخرائط
جرّب دروسًا تفاعلية صغيرة تُظهر كيف تعمل بيانات الخرائط. غيّر إدخالًا، واضغط زرًا، وشاهد كيف يظهر الشكل الهندسي على خريطة حقيقية.
Latitude / Longitude Flip Checker
Humans often say latitude then longitude. GeoJSON uses longitude first. Type a place, then flip it for the map.
Close the Polygon
A polygon must start and end with the same coordinate.
[ [-122.3390, 47.6050], [-122.3300, 47.6050], [-122.3300, 47.6110], [-122.3390, 47.6110], ????? ]
Mini Mission Builder
Build your first real map object. Choose a mission, fill in the blanks, and watch the geometry appear on the map.
Helpful hint: for points, the form uses latitude and longitude separately, but GeoJSON stores them as [longitude, latitude].
- A Feature with Point geometry
- Useful for landmarks, stops, sites, and single events
{
"type": "Feature",
"properties": {
"title": "Treasure",
"emoji": "🏴☠️"
},
"geometry": {
"type": "Point",
"coordinates": [
-122.3321,
47.6062
]
}
}Shape Classifier
- café
- museum
- bus stop
Layer Stack Demo
Maps are built from layers. Big shapes can cover smaller ones depending on which layer is drawn on top.
Geohash Bucket Explorer
Click a bucket. Nearby buckets often share similar prefixes. This is how software narrows the search before looking closely.
🧪 الخطوة 13 — مهمة تدريبية
لنجرب بناء مسار. منذ زمن طويل، سافر تجار تشوماك من أوكرانيا جنوبًا لجمع الملح. مهمتك هي تمثيل تلك الرحلة على شكل LineString.
- كييف: خط العرض 50.45، خط الطول 30.52
- السهوب: خط العرض 48.45، خط الطول 32.05
- مناجم الملح: خط العرض 46.48، خط الطول 30.72
تلميح مفيد: تريد GeoJSON خط الطول أولًا، ثم خط العرض.
- اعكس الإحداثيات إلى ترتيب GeoJSON.
- الصق النموذج في المحرر.
- انظر إلى الخط واشرح ما نوع الشكل الذي هو عليه.
- انتقل إلى الخطوة التالية داخل Developer Workbench.
🚀 الخطوة التالية
عندما تصبح هذه الأفكار مألوفة، تصبح الأدوات التالية أكثر قوة بكثير.
يوفّر Atlasemoji أداتين رئيسيتين للمطورين:
بيئة ودية للتجريب على البيانات الوصفية، وGeoJSON، والتضمينات، والصور الثابتة، ومخرجات الخرائط.
واجهة Swagger / OpenAPI الكاملة لفحص المسارات، والمعاملات، والاستجابات، وعقد Atlasemoji API.