18.17. البدء مع مصمّم النماذج¶
ملاحظة
في هذا الدرس سنستخدم مصمّم النماذج، وهو مكوّن قوي يمكننا استخدامه لتعريف سير عمل وتشغيل سلسلة من الخوارزميات.
لا تقتصر الجلسة المعتادة مع أدوات المعالجة على تشغيل خوارزمية واحدة. ففي العادة تُشغَّل عدة خوارزميات للحصول على نتيجة، وتُستخدم مخرجات بعضها مُدخلاتٍ لبعضها الآخر.
باستخدام مصمّم النماذج، يمكن وضع سير العمل هذا في نموذج يشغّل جميع الخوارزميات اللازمة دفعة واحدة، فيبسّط العملية كلها ويؤتمتها.
لبدء هذا الدرس، سنحسب معاملًا يُسمّى مؤشر الرطوبة الطبوغرافي (Topographic Wetness Index). تُسمّى الخوارزمية التي تحسبه Topographic wetness index (twi).
كما ترى، هناك مُدخلان إلزاميان: Slope و Catchment Area. وهناك أيضًا مُدخل اختياري، لكننا لن نستخدمه، لذا يمكننا تجاهله.
لا تحتوي بيانات هذا الدرس إلا على نموذج ارتفاع رقمي (DEM)، لذا ليس لدينا أيٌّ من المُدخلات المطلوبة. لكننا نعرف كيف نحسب كليهما من نموذج الارتفاع الرقمي، إذ رأينا بالفعل الخوارزميات التي تحسب الانحدار ومساحة منطقة التجميع. لذا يمكننا أولًا حساب هاتين الطبقتين ثم استخدامهما في خوارزمية TWI.
إليك نوافذ حوار المعاملات التي يجب أن تستخدمها لحساب الطبقتين الوسيطتين.
ملاحظة
يجب حساب الانحدار بالراديان، لا بالدرجات.
وهكذا يجب أن تضبط نافذة حوار معاملات خوارزمية TWI.
هذه هي النتيجة التي ستحصل عليها (استُخدمت لوحة الألوان الافتراضية المعكوسة للنطاق الواحد بالألوان الزائفة في العرض). يمكنك استخدام النمط المرفق twi.qml.
ما سنحاول فعله الآن هو إنشاء خوارزمية تحسب TWI من نموذج ارتفاع رقمي في خطوة واحدة فقط. سيوفّر ذلك علينا العمل إذا احتجنا لاحقًا إلى حساب طبقة TWI من نموذج ارتفاع رقمي آخر، إذ سنحتاج إلى خطوة واحدة فقط بدلًا من الخطوات الثلاث السابقة. جميع العمليات التي نحتاجها موجودة في صندوق الأدوات، لذا كل ما علينا فعله هو تعريف سير العمل الذي يجمعها. وهنا يأتي دور مصمّم النماذج.
افتح مصمّم النماذج باختيار المدخل الخاص به في قائمة المعالجة.
يتطلّب إنشاء نموذج أمرين: ضبط المُدخلات التي سيحتاجها، وتعريف الخوارزمية التي يحتويها. ويتم كلاهما بإضافة عناصر من التبويبين الموجودين على الجانب الأيسر من نافذة مصمّم النماذج: Inputs و Algorithms.
لنبدأ بالمُدخلات. ليس لدينا الكثير لنضيفه في هذه الحالة. نحتاج فقط إلى طبقة شبكية تحتوي على نموذج الارتفاع الرقمي، وستكون هي بيانات الإدخال الوحيدة.
انقر نقرًا مزدوجًا على المُدخل Raster layer وسترى نافذة الحوار التالية.
علينا هنا تعريف المُدخل الذي نريده:
بما أننا نتوقع أن تكون هذه الطبقة الشبكية نموذج ارتفاع رقمي، فسنسمّيها
DEM. وهذا هو الاسم الذي سيراه مستخدم النموذج عند تشغيله.بما أننا نحتاج إلى هذه الطبقة ليعمل النموذج، فسنعرّفها طبقةً إلزامية.
هكذا يجب ضبط نافذة الحوار.
انقر على OK وسيظهر المُدخل على لوحة مصمّم النماذج.
لننتقل الآن إلى التبويب Algorithms.
أول خوارزمية علينا تشغيلها هي خوارزمية Slope, aspect, curvature. حدّد موقعها في قائمة الخوارزميات، وانقر عليها نقرًا مزدوجًا وسترى نافذة الحوار الموضّحة أدناه.
تشبه نافذة الحوار هذه كثيرًا النافذة التي تجدها عند تشغيل الخوارزمية من صندوق الأدوات، لكن العناصر التي يمكنك استخدامها قيمًا للمعاملات لا تؤخذ من مشروع QGIS الحالي، بل من النموذج نفسه. هذا يعني أننا في هذه الحالة لن نجد جميع الطبقات الشبكية في مشروعنا متاحة للحقل Elevation، بل فقط تلك المعرّفة في نموذجنا. وبما أننا أضفنا مُدخلًا شبكيًا واحدًا فقط اسمه
DEM، فستكون هذه هي الطبقة الشبكية الوحيدة التي سنراها في القائمة الخاصة بالمعامل Elevation.تُعالَج المخرجات التي تُنتجها خوارزمية بطريقة مختلفة قليلًا عندما تُستخدم الخوارزمية جزءًا من نموذج. فبدلًا من اختيار مسار الملف الذي تريد حفظ كل مخرج فيه، عليك فقط أن تحدّد ما إذا كان ذلك المخرج طبقة وسيطة (لا تريد الاحتفاظ بها بعد تنفيذ النموذج) أم طبقة نهائية. في هذه الحالة، جميع الطبقات التي تُنتجها هذه الخوارزمية وسيطة. سنستخدم واحدة منها فقط (طبقة الانحدار)، لكننا لا نريد الاحتفاظ بها، لأننا نحتاجها فقط لحساب طبقة TWI، وهي النتيجة النهائية التي نريد الحصول عليها.
عندما لا تكون الطبقات نتيجة نهائية، فاترك الحقل المقابل فارغًا. وإلا، فعليك إدخال اسم سيُستخدم لتعريف الطبقة في نافذة حوار المعاملات التي ستظهر عند تشغيل النموذج لاحقًا.
ليس هناك الكثير لاختياره في نافذة الحوار الأولى هذه، إذ ليس لدينا سوى طبقة واحدة في نموذجنا (مُدخل DEM الذي أنشأناه). في الواقع، الإعداد الافتراضي لنافذة الحوار هو الإعداد الصحيح في هذه الحالة، لذا عليك فقط الضغط على OK. هذا ما سيظهر لديك الآن على لوحة مصمّم النماذج.
الخوارزمية الثانية التي علينا إضافتها إلى نموذجنا هي خوارزمية مساحة منطقة التجميع. سنستخدم الخوارزمية المسمّاة Catchment area (Parallel). سنستخدم طبقة DEM مُدخلًا مرة أخرى، ولا يوجد بين المخرجات التي تُنتجها أي مخرج نهائي، لذا إليك كيف عليك ملء نافذة الحوار المقابلة.
يجب أن يبدو نموذجك الآن على هذا النحو.
الخطوة الأخيرة هي إضافة خوارزمية Topographic wetness index بالإعدادات التالية.
في هذه الحالة، لن نستخدم DEM مُدخلًا، بل سنستخدم طبقتي الانحدار ومساحة منطقة التجميع اللتين تحسبهما الخوارزميتان اللتان أضفناهما سابقًا. كلما أضفت خوارزميات جديدة، تصبح المخرجات التي تُنتجها متاحة للخوارزميات الأخرى، وباستخدامها تربط الخوارزميات معًا وتنشئ سير العمل.
في هذه الحالة، الطبقة الناتجة
TWIطبقة نهائية، لذا علينا الإشارة إلى ذلك. أدخل في مربع النص المقابل الاسم الذي تريد أن يظهر لهذا المخرج.اكتمل نموذجنا الآن ويجب أن يبدو على هذا النحو.
أدخل اسمًا واسم مجموعة في الجزء العلوي من نافذة النموذج.
احفظه بالنقر على الزر Save. يمكنك حفظه في أي مكان تريده وفتحه لاحقًا، لكن إذا حفظته في مجلد النماذج (وهو المجلد الذي ستراه عند ظهور نافذة حوار حفظ الملف)، فسيصبح نموذجك متاحًا أيضًا في صندوق الأدوات. لذا ابقَ في ذلك المجلد واحفظ النموذج باسم الملف الذي تفضّله.
أغلق الآن نافذة مصمّم النماذج وانتقل إلى صندوق الأدوات. ستجد نموذجك في المدخل Models.
يمكنك تشغيله تمامًا مثل أي خوارزمية عادية، بالنقر عليه نقرًا مزدوجًا.
كما ترى، تحتوي نافذة حوار المعاملات على المُدخل الذي أضفته إلى النموذج، إلى جانب المخرجات التي حدّدتها نهائيةً عند إضافة الخوارزميات المقابلة.
شغّله باستخدام DEM مُدخلًا وستحصل على طبقة TWI في خطوة واحدة فقط.