الدرس تعليمي:اضافة البيانات المفتوحة إلى الحوض الصباب

5. OpenStreetMapإدراج البيانات الاتجاهية من منصة

يُعد مشروع  (OpenStreetMap - OSM) مشروعاً تعاونياً لإنشاء خريطة عالمية مجانية وقابلة للتعديل. وتُعتبر OSM مثالاً بارزاً لـ المعلومات الجغرافية التطوعية (VGI) أو ما يعرف بـ التعهيد الجماعي (Crowdsourcing). توجد عدة طرق لاستخدام هذه البيانات (Data):
  • من خلال الخريطة التفاعلية على الموقع الإلكتروني لخريطة الشارع المفتوحة (http://www.openstreetmap.org).
  • في برنامج QGIS، يمكنك إضافة الخرائط الأساسية (Basemaps) الخاصة بـ OSM عبر إضافة QuickMapServices.
  • في برنامج QGIS، يمكنك تنزيل بيانات OSM مباشرة عبر الإنترنت؛ حيث توجد عدة طرق للقيام بذلك . سنستخدم في هذا القسم إضافة QuickOSM التي تعتمد على واجهة برمجة تطبيقات Overpass API.
سنقوم في هذا القسم بتنزيل البيانات الاتجاهية (Vector data) الخاصة بـ OSM مباشرة في برنامج QGIS لـ حوض صبّاب رور (Rur catchment). سنستكمل العمل بناءً على النتائج السابقة، ولكننا سنعرض فقط طبقتي Rur_Catchment و Channels_Clip، بينما يجب إلغاء تحديد الطبقات الأخرى.
  1. ثبّت إضافة QuickOSM من خلال القائمة الرئيسية: Plugins (الإضافات) | Manage and Install Plugins (إدارة وتثبيت الإضافات)، ثم ابحث عن QuickOSM.
  2. افتح نافذة حوار (Dialogue) إضافة QuickOSM باختيار Vector (بيانات اتجاهية) | QuickOSM | QuickOSM من القائمة الرئيسية.

عند استخدام QuickOSM للمرة الأولى، ستظهر نافذة منبثقة (Popup) تطلب منك تأكيد فهمك لـ حقوق الطبع والنشر (Copyrights) الخاصة بـ OpenStreetMap قبل البدء في استخدام الإضافة (Plugin). وفي الدليل التعليمي لـ تصميم الخرائط (Map Design)، ستتعلم الطريقة الرسمية لـ إسناد الفضل (Crediting) لـ OpenStreetMap في خريطتك النهائية.

3. اقرأ نص النافذة المنبثقة (Popup) وأكد فهمك لـ حقوق الطبع والنشر (Copyrights).
 
سنقوم أولاً بتنزيل الأنهار (Rivers) حتى نتمكن من مقارنتها بالأنهار التي قمنا بـ اشتقاقها (Derived) سابقاً. تتكون خصائص (Attributes) بيانات OSM من مفاتيح (Keys) وقيم (Values). لمعرفة المزيد حول هذا الموضوع، راجع الرابط التالي: https://wiki.openstreetmap.org/wiki/Mapfeatures.

4. اختر waterway كـ مفتاح (Key)، و river كـ قيمة (Value). اختر مضلع (Polygon) طبقة Rur_catchment ليكون هو النطاق (Extent). لاحظ أنه يمكنك أيضاً تحديد نطاق لوحة الخريطة (Map Canvas)

5. انتقل إلى الأسفل وانقر على السهم الموجود قبل Advanced (خيارات متقدمة) وتأكد من تحديد خيارات Node (عقدة)، و Way (مسار)، و Relation (علاقة)، و Lines (خطوط) فقط (يتعين عليك اختيار الهندسة - Geometry التي تود تنزيلها) . يجب أن تبدو نافذة الحوار (Dialogue) الآن كما في الشكل الموضح أدناه . انقر على Run Query (تشغيل الاستعلام).


يمكنك زيادة قيمة مهلة الانتظار (Timeout) إذا كان اتصالك بالإنترنت بطيئاً.
 
ستتم إضافة الطبقة الجديدة كـ طبقة مسودة مؤقتة (Temporary scratch layer)، كما يظهر من أيقونة "طبقة المسودة المؤقتة"  scratchlayer indicator في مساحة المؤشر على يمين الطبقة في لوحة الطبقات (Layers panel). وهذا يعني أنه سيتم حذفها عند إغلاق برنامج QGIS. من المهم تحويل هذه الطبقات إلى طبقات دائمة (Permanent) إذا كنت ترغب في الاحتفاظ بها؛ سنقوم بذلك لاحقاً.
 
6. أغلق نافذة إضافة QuickOSM.

7. اضبط التنسيق (Style) وقارن طبقة waterway_river المستمدة من OSM مع طبقة Rur_channels.

  • ماذا تلاحظ؟

8. لنقم بإضافة المناجم (mines) بطريقة مماثلة. استخدم المفتاح key=landuse والقيمة value=quarry .لا تنسَ اختيار Multipolygons (مضلعات متعددة) بدلاً من Lines (خطوط).

9. قم بتنسيق المضلعات بـ تعبئة رمادية (gray fill) و إطار أسود (black stroke).

10. قم بـ تسمية (Label) المضلعات باستخدام خاصية Name بخط مائل (italic). انتقل إلى علامة تبويب تنسيق التسمية label formatting tab (Formatting) وأدخل مسافة كـ حرف التفاف النص (Wrap on character). ثم اضبط المحاذاة (Alignment) إلى الوسط (Center). انتقل إلى علامة تبويب الاظهار  label rendering tab  (Rendering) وانقر على خيار "رسم التسميات التي تتوائم تماماً داخل المعلم فقط" (Only draw labels which fit completely within feature).

سنقوم الآن بالبحث حول مكان محدد. في الزاوية السفلية اليسرى من نافذة QGIS، يمكنك أن تجد في شريط الحالة (Status bar) حقل بحث يسمى شريط تحديد المواقع (Locator bar). يمكن استخدام هذا الشريط للعثور على أي ميزة أو خيار وتشغيله في برنامج QGIS. كما يمكنك استخدامه للبحث عن الأماكن باستخدام أداة Nominatim geocoder، والتي توفرها مؤسسة OpenStreetMap والمساهمون فيها. للبحث عن الأماكن، اكتب الرمز < متبوعاً بمسافة ثم العنوان. سنقوم بالبحث عن مدينة Jülich.

11. في شريط تحديد المواقع (Locator bar) اكتب Jülich <. ستظهر نتيجة أداة التكويد الجغرافي (geocoder) على الفور.

geocoding

12. اختر مدينة Jülich, Kreis Düren, North Rhine-Westphalia, 52428, Germany.

 سيقوم برنامج QGIS الآن بـ تكبير الرؤية (Zoom in) على مركز مدينة Jülich. يقع جنوب شرق المدينة "مركز أبحاث يوليش" ، وهو معهد أبحاث ضخم. ونرى في جهتي الجنوب والشرق مناجم (Mining) سطحية ضخمة للفحم البني (lignite)؛ ويقع المنجم الموجود في الجنوب داخل نطاق حوض صبّاب نهر الرور (Rur catchment).

13. قارن الآن بين المحجر (Quarry) المشتق من بيانات OSM وصور Google Satellite، ونموذج الارتفاعات الرقمي (DEM)، وخريطة WorldCover لـ غطاءات الأرض (Land-cover map).

  • ما هي الاختلافات الملحوظة؟
  • أي من هذه المصادر يُعتبر أكثر حداثة (تحديثاً)؟ هل هي صور Google Satellite، أم خريطة WorldCover، أم بيانات OSM؟
  •  كيف ترتبط الهيدروغرافيا (Hydrography) بالمحجر (بالمقارنة بين بيانات OSM والشبكة التي تم تحديدها/رسمها بواسطة GIS
تذكر أن الطبقات التي تمت إضافتها عبر إضافة QuickOSM هي طبقات مسودة مؤقتة  (Temporary scratch layers)، ويُشار إليها بأيقونة خاصة scratchlayer indicator. يوجد خيار لجعل الطبقة دائمة ، لكن خيار تصدير (Export) الطبقة يوفر مرونة أكبر. سنستخدم هذا الخيار لحفظ الطبقة داخل ملف الـ GeoPackage الذي تم إنشاؤه في الدرس السابق.

14. انقر بزر الماوس الأيمن على طبقة landuse_quarry، واختر تصدير (Export) | حفظ المعالم باسم..(Save Features As).

export osm to geopackage


15. في نافذة حوار Save vector layer as (حفظ الطبقة الاتجاهية باسم)، اختر GeoPackage من خانة Format (التنسيق). عند خانة Filename (اسم الملف)، تصفح المجلدات لاختيار ملف Rur_data.gpkg الذي تم إنشاؤه في الفصل السابق. وفي خانة Layer name (اسم الطبقة)، اكتب Quarries؛ سيكون هذا هو اسم الطبقة داخل ملف الـ GeoPackage . قم بتغيير نظام المرجع الإحداثي (CRS) إلى النظام الخاص بالمشروع (EPSG: 32632)، ثم انقر على OK (موافق)

save osm to geopackage

16. أضف الآن بعض المعالم الأخرى المثيرة للاهتمام (نقاط، وخطوط، ومضلعات) وقم بإضافتها إلى ملف الـ GeoPackage :

  • السدود (Dams): المفتاح Key=waterway والقيمة value=dam .
  • البحيرات (Lakes): المفتاح Key=natural والقيمة value=water.
  • الينابيع (Springs): المفتاح Key=natural والقيمة value=spring 

من المهم التفكير في الهندسة (Geometry) التي تود تنزيلها وترتيب الطبقات . فعلى سبيل المثال، تبدو السدود أفضل كخطوط موضوعة فوق مضلعات (Polygons) البحيرات.

17. قم الآن بـ تنسيق (Style) الطبقات، وابدأ بـ البحيرات (Lakes).18

18. بعد ذلك، ستعمل على خطوط السدود؛ اجعل اللون (Color) أسود وعرض الإطار (Stroke width) بقيمة 0.86 ملم.

19. انقر على زر Add symbol layer  add symbol layer (إضافة طبقة رمز). اختر مكون Simple line (خط بسيط)، وحدد Symbol layer type (نوع طبقة الرمز) ليكون Marker line (خط علامات). ثم اختر مكون Simple marker (علامة بسيطة) وحدد vertical line symbol (رمز الخط الرأسي) من الخيارات الموضحة أدناه. قم بزيادة Stroke width (عرض الإطار) إلى 0.2 ملم وSize (الحجم) إلى 3 ملم. يجب أن يبدو استعراض رمز السدود الآن بهذا الشكلdam symbol.png

20. وأخيراً، ستقوم بتنسيق نقاط الينابيع. اجعل الطبقة هي الطبقة المستهدفة في لوحة تنسيق الطبقة (Layer Styling Panel). اختر مكون Simple fill (تعبئة بسيطة)، ثم اختر SVG Marker كـ نوع لطبقة الرمز (Symbol layer type). تصفح مجلد الرموز وابحث عن ملف blue-marker.svg blue marker.png. قم بزيادة Size (الحجم) لـ العرض والارتفاع (Width and Height) إلى 6 ملم لكل منهما.

21. احفظ جميع طبقات المسودة المؤقتة (Temporary scratch layers) في ملف الـ GeoPackage . قم بتحميل الطبقات من الـ GeoPackage وانسخ التنسيقات. احذف طبقات المسودة المؤقتة من لوحة الطبقات (Layers panel). احفظ النتيجة كـ مشروع جديد داخل ملف Rur_data.gpkg GeoPackage.

يوضح هذا الفيديو الخطوات المذكورة أعلاه: