7.2. عرض الخريطة ثلاثي الأبعاد¶
يُوفَّر دعم التصور ثلاثي الأبعاد من خلال عرض الخريطة ثلاثي الأبعاد. يمكنك إنشاء عروض الخريطة ثلاثية الأبعاد وإدارتها وفتحها عبر القائمة :
بالنقر على
يمكنك إنشاء عرض خريطة ثلاثي الأبعاد جديد. ستظهر لوحة QGIS عائمة وقابلة للإرساء (انظر نافذة حوار عرض الخريطة ثلاثي الأبعاد). لها الامتداد والعرض نفسيهما للوحة الخريطة الرئيسية ثنائية الأبعاد، وتوفر مجموعة من أدوات التنقل لتحويل العرض إلى ثلاثي الأبعاد.بالنقر على تنتقل إلى مدير عروض الخريطة ثلاثية الأبعاد. هنا يمكنك فتح عروض الخريطة ثلاثية الأبعاد ونسخها وحذفها وإعادة تسميتها.
إذا أنشأت عرضًا أو أكثر من عروض الخريطة ثلاثية الأبعاد، فستراها مدرجة في . يمكنك تشغيلها وإيقافها بالنقر عليها. وستُحفظ عند حفظ المشروع، حتى لو كانت متوقفة.
شكل 7.22 نافذة حوار عرض الخريطة ثلاثي الأبعاد¶
تتوفر الأدوات التالية أعلى لوحة عرض الخريطة ثلاثي الأبعاد:
Camera Control: يحرّك العرض مع الإبقاء على زاوية الكاميرا واتجاهها
Zoom Full: يغيّر حجم العرض ليشمل امتداد جميع الطبقات، أو الامتداد المرجعي إن كان مضبوطًا
Toggle On-Screen Notification: يُظهر/يُخفي عنصر واجهة التنقل (الذي يهدف إلى تسهيل التحكم في عرض الخريطة)
Identify: يعيد معلومات عن النقطة المنقورة من التضاريس أو المعلم (أو المعالم) ثلاثي الأبعاد المنقور -- مزيد من التفاصيل في تعريف المعالم
Measurement Line: يقيس المسافة الأفقية والرأسية والكلية ثلاثية الأبعاد بين النقاطانقر لإضافة نقاط
انقر بزر الفأرة الأيمن لإنهاء القياس
يؤدي النقر بزر الفأرة الأيمن مرتين أو الضغط على New إلى إعادة تعيين الجدول
Animations: يُظهر/يُخفي عنصر واجهة مشغّل الحركة
Set View Theme: يتيح لك اختيار مجموعة الطبقات التي تُعرض في عرض الخريطة من سمات الخريطة المعرّفة مسبقًا.تساعدك القائمة
Camera على التحكم في العلاقة بين العرضين ثنائي الأبعاد وثلاثي الأبعاد:مزامنة العرضين (2D map view follows 3D camera و/أو 3D camera follows 2D Map view)
Show visible camera area in 2D map view
Set 3D scene on 2D map view: يتيح قص المشهد ثلاثي الأبعاد وعرض التضاريس والمعالم المتقاطعة مع امتداد مرسوم على لوحة الخريطة ثنائية الأبعاد فقط. تتوفر خيارات أخرى في تبويب الإعدادات العامة.
تُنشئ
Cross Section Tool مقطعًا عرضيًا في المشهد ثلاثي الأبعاد بتحديد منطقة على التضاريس في لوحة الخريطة ثنائية الأبعاد. انقر لتعيين نقطة البداية، وحرّك الفأرة لتحديد اتجاه الخط، ثم انقر مرة أخرى لتعيين نقطة النهاية. يمكنك ضبط حجم المقطع بتحريك الفأرة بعد تحديد نقطتي البداية والنهاية. اضغط Esc أو انقر بزر الفأرة الأيمن لإعادة تعيين التحديد.
تضيف
Effects مؤثرات بصرية إلى الرسم ثلاثي الأبعاد، مثل إظهار الظلال أو إضاءة القبة البصرية أو الانسداد المحيطي.يفتح الزر
Configure... نافذة الحوار لضبط إعدادات عرض الخريطة ثلاثي الأبعاد.
Dock 3D Map View: التبديل من عنصر واجهة مُرسى إلى نافذة مستقلة
7.2.1. إعداد المشهد¶
يُفتح عرض الخريطة ثلاثي الأبعاد ببعض الإعدادات الافتراضية التي يمكنك تخصيصها. لذلك اضغط زر
Configure... أعلى لوحة العرض ثلاثي الأبعاد لفتح نافذة 3D configuration.
في نافذة الإعداد ثلاثي الأبعاد توجد خيارات متنوعة لضبط المشهد ثلاثي الأبعاد بدقة:
7.2.1.1. عام¶
شكل 7.23 نافذة الحوار للإعدادات العامة للخريطة ثلاثية الأبعاد¶
قصر محتويات المشهد ثلاثي الأبعاد على امتداد خريطة ثنائي الأبعاد، باستخدام أداة اختيار الامتداد المكاني: تُقص التضاريس والمعالم عند الامتداد المحدد، ولا تُحمَّل في المشهد إلا الأجزاء الواقعة ضمن الامتداد. كما يُؤخذ نطاق ارتفاع التضاريس وطبقات الشبكة المثلثية (mesh) والسحب النقطية في الحسبان، بحيث لا توضع الكاميرا أسفل محتويات المشهد، ولا سيما عند استخدام إعداد المقياس الرأسي للتضاريس لتضخيم فروق الارتفاع.
يُستخدم الامتداد المضبوط أيضًا امتدادًا مرجعيًا عند الضغط على زر
Zoom full في عرض الخريطة ثلاثي الأبعاد.فعّل
Show in 2D map view لعرض إطار مطاطي (rubberband) في لوحة الخريطة الرئيسية يطابق الامتداد الحالي للمشهد ثلاثي الأبعاد.
7.2.1.2. التضاريس¶
شكل 7.24 نافذة الحوار لإعدادات تضاريس الخريطة ثلاثية الأبعاد¶
Terrain: قبل الخوض في التفاصيل، تجدر الإشارة إلى أن التضاريس في العرض ثلاثي الأبعاد تُمثَّل بتسلسل هرمي من بلاطات التضاريس، وكلما اقتربت الكاميرا من التضاريس، استُبدلت البلاطات الموجودة التي لا تحتوي على تفاصيل كافية ببلاطات أصغر ذات تفاصيل أكثر. ولكل بلاطة شكل هندسي على هيئة شبكة مثلثية (mesh) مشتق من الطبقة الشبكية (رستر) للارتفاع، ونسيج مأخوذ من طبقات الخريطة ثنائية الأبعاد.
يمكن أن يكون Type تضاريس الارتفاع:
تضاريس مسطحة Flat terrain
نموذج ارتفاع رقمي محمّل DEM (Raster Layer)
خدمة Online تحمّل بلاطات الارتفاع المنتَجة بأدوات Mapzen -- مزيد من التفاصيل على https://registry.opendata.aws/terrain-tiles/
مجموعة بيانات Mesh محمّلة
طبقة Quantized Mesh من المشروع
Elevation: الطبقة الشبكية (رستر) أو طبقة الشبكة المثلثية (mesh) المراد استخدامها لتوليد التضاريس. يجب أن تحتوي الطبقة الشبكية على نطاق يمثل الارتفاع. أما في طبقة الشبكة المثلثية، فتُستخدم قيم Z للرؤوس.
Vertical scale: معامل المقياس للمحور الرأسي. تؤدي زيادة المقياس إلى تضخيم ارتفاع التضاريس.
Tile resolution: عدد العينات المأخوذة من الطبقة الشبكية للتضاريس لكل بلاطة. تعني القيمة 16px أن الشكل الهندسي لكل بلاطة سيتكون من 16x16 عينة ارتفاع. تُنشئ القيم الأعلى بلاطات تضاريس أكثر تفصيلًا على حساب زيادة تعقيد الرسم.
Skirt height: قد تظهر أحيانًا شقوق صغيرة بين بلاطات التضاريس. تؤدي زيادة هذه القيمة إلى إضافة جدران رأسية ("تنانير") حول بلاطات التضاريس لإخفاء الشقوق.
Offset: يحرّك التضاريس إلى الأعلى أو الأسفل، مثلًا لضبط ارتفاعها بالنسبة لمستوى سطح الأرض للكائنات الأخرى في المشهد.
قد يكون هذا مفيدًا عند وجود تباين بين ارتفاع التضاريس وارتفاع الطبقات في مشهدك (مثل السحب النقطية التي تستخدم ارتفاعًا رأسيًا نسبيًا فقط). في هذه الحالة، يمكن أن يحسّن ضبطُ ارتفاع التضاريس يدويًا ليتوافق مع ارتفاع الكائنات في مشهدك تجربةَ التنقل.
عند استخدام طبقة الشبكة المثلثية (mesh) تضاريسَ، يمكنك تهيئة Triangles settings (العرض السلكي، والمثلثات الناعمة، ومستوى التفاصيل) و Rendering colors settings (بلون موحد أو استنادًا إلى تدرج لوني). مزيد من التفاصيل في قسم الخصائص ثلاثية الأبعاد لطبقة الشبكة المثلثية.
Terrain shading: يتيح لك اختيار طريقة رسم التضاريس:التظليل معطّل - يُحدَّد لون التضاريس من نسيج الخريطة فقط
التظليل مفعّل - يُحدَّد لون التضاريس باستخدام نموذج تظليل Phong، مع مراعاة نسيج الخريطة، ومتجه العمودي على التضاريس، والإضاءة (أو الإضاءات) في المشهد، وألوان Ambient و Specular و Shininess لمادة التضاريس
7.2.1.3. الإضاءة¶
من تبويب Lights، اضغط القائمة
لإضافة
حتى ثمانية Point lights: تبعث الضوء في جميع الاتجاهات، ككرة من الضوء تملأ منطقة ما. تكون الكائنات الأقرب إلى الضوء أكثر سطوعًا، والكائنات الأبعد أكثر عتمة. للضوء النقطي موضع محدد (X و Y و Z)، و Color، و Intensity، و Attenuation
حتى أربعة Directional lights: تحاكي الإضاءة التي تحصل عليها من مصباح عملاق بعيد جدًا عن كائناتك، متمركز دائمًا ولا يخفت أبدًا (مثل الشمس). يبعث أشعة ضوء متوازية في اتجاه واحد لكن الضوء يمتد إلى ما لا نهاية. يمكن تدوير الضوء الاتجاهي بتحديد Azimuth، وله Altitude و Color و Intensity.
شكل 7.25 نافذة الحوار لإعدادات إضاءة الخريطة ثلاثية الأبعاد¶
7.2.1.4. المؤثرات¶
شكل 7.26 نافذة الحوار لإعدادات مؤثرات الخريطة ثلاثية الأبعاد¶
فعّل
Show shadows لعرض الظلال في مشهدك، بتحديد:ضوء اتجاهي Directional light
Shadow rendering maximum distance: لتجنب رسم ظلال الكائنات البعيدة جدًا، خاصةً عندما تنظر الكاميرا إلى الأعلى على امتداد الأفق
Shadow bias: لتجنب تأثيرات التظليل الذاتي التي قد تجعل بعض المناطق أكثر عتمة من غيرها، بسبب الفروق بين أحجام الخرائط. كلما كانت القيمة أقل كان أفضل
Shadow map resolution: لجعل الظلال تبدو أكثر حدة. قد يؤدي ذلك إلى انخفاض الأداء إذا كانت قيمة الدقة مرتفعة جدًا.
Show Eye Dome Lighting (EDL): مؤثر معالجة لاحقة يعزز إدراك العمق. يُقارن عمق كل بكسل (بُعده عن الكاميرا) بعمق البكسلات المجاورة ويُبرز وفقًا لفرق العمق ذلك، مما يجعل الحواف بارزة. يؤثر في المشهد كله ويمكن دمجه مع Screen Space Ambient Occlusion. يمكن التحكم في المعاملات التالية:Lighting strength: يزيد التباين، مما يتيح إدراكًا أفضل للعمق
Lighting distance: يمثل بُعد البكسلات المستخدمة عن البكسل المركزي، ويؤدي إلى جعل الحواف أكثر سماكة.
أضف
Ambient Occlusion في فضاء الشاشة (SSAO): مؤثر معالجة لاحقة يعزز أيضًا إدراك العمق بتطبيق تظليل أغمق على المناطق الأقل تعرضًا للإضاءة المحيطة. يؤثر في المشهد كله ويمكن دمجه مع Eye dome Lighting. يمكن التحكم في المعاملات التالية:Radius: المدى الذي نصل إليه لحساب الانسداد المحيطي
Intensity: مدى قوة المؤثر (القيم الأعلى تجعل الأشياء أغمق)
Occlusion threshold: عدد النقاط المجاورة التي يجب أن تكون محجوبة لظهور المؤثر (القيم الأقل من 50% تجعل الناتج أغمق، لكنها قد توفر مدى أكبر للانسداد)
شكل 7.27 رسم السحب النقطية في الخريطة ثلاثية الأبعاد باستخدام إضاءة القبة البصرية (EDL) و/أو الانسداد المحيطي في فضاء الشاشة (SSAO)¶
من الأعلى، ومن اليسار إلى اليمين: دون مؤثر -- SSAO فقط -- EDL فقط -- SSAO و EDL
7.2.1.5. الكاميرا وقبة السماء (Skybox)¶
في هذا التبويب، يمكنك التحكم في معاملات مختلفة مثل الكاميرا، والمحور ثلاثي الأبعاد، ومزامنة التنقل، وقبة السماء.
شكل 7.28 نافذة الحوار لإعدادات كاميرا الخريطة ثلاثية الأبعاد¶
تتجاوز مجموعة المعاملات Camera بعض إعدادات الكاميرا الافتراضية المضبوطة في نافذة الحوار .
فعّل
Show 3D Axis لتمكين أداة المحور ثلاثي الأبعاد. تتيح مجموعة المعاملات هذه ضبط نوع المحور وموضعه.مع النوع Coordinate Reference System يُمثَّل محور متعامد.
مع النوع Cube يُمثَّل مكعب ثلاثي الأبعاد. يمكن استخدام أوجه المكعب لتغيير منظور الكاميرا: على سبيل المثال، انقر على الوجه north لضبط الكاميرا على الرؤية من جهة الشمال.
نصيحة
انقر بزر الفأرة الأيمن على المحور ثلاثي الأبعاد لضبط موضعه ونوعه ومنظور الكاميرا بسرعة.
شكل 7.29 قائمة السياق للمحور ثلاثي الأبعاد¶
تضيف مجموعة المعاملات Navigation Synchronization خيارات لمزامنة العرض ثنائي الأبعاد مع موضع الكاميرا ثلاثية الأبعاد، أو مزامنة موضع الكاميرا ثلاثية الأبعاد مع العرض ثنائي الأبعاد، أو مزامنة في الاتجاهين. ويعرض الخيار الأخير الامتداد المرئي من الكاميرا ثلاثية الأبعاد فوق عرض الخريطة ثنائي الأبعاد.
فعّل
Show skybox لتمكين رسم قبة السماء (skybox) في المشهد. يمكن أن يكون نوع قبة السماء:Panoramic texture، بملف واحد يوفر رؤية بزاوية 360°
Distinct faces، بملف نسيج لكل وجه من الأوجه الستة لصندوق يحتوي المشهد
يمكن أن تكون ملفات صور النسيج لقبة السماء ملفات على القرص، أو عناوين URL بعيدة، أو مضمّنة في المشروع (مزيد من التفاصيل).
7.2.1.6. متقدم¶
شكل 7.30 نافذة حوار الإعدادات المتقدمة للخريطة ثلاثية الأبعاد¶
Map tile resolution: عرض وارتفاع صور الخريطة ثنائية الأبعاد المستخدمة نسيجًا لبلاطات التضاريس. تعني القيمة 256px أن كل بلاطة ستُرسم في صورة بحجم 256x256 بكسل. تُنتج الأرقام الأعلى بلاطات تضاريس أكثر تفصيلًا على حساب زيادة تعقيد الرسم.
Max. screen error: يحدد العتبة التي تُستبدل عندها بلاطات التضاريس ببلاطات أكثر تفصيلًا (والعكس)، أي مدى سرعة استخدام العرض ثلاثي الأبعاد لبلاطات أعلى جودة. تعني الأرقام الأقل تفاصيل أكثر في المشهد على حساب زيادة تعقيد الرسم.
Max. ground error: الدقة المكانية لبلاطات التضاريس التي يتوقف عندها تقسيم البلاطات إلى بلاطات أكثر تفصيلًا (إذ لن يضيف تقسيمها أي تفاصيل إضافية على أي حال). تحدّ هذه القيمة من عمق التسلسل الهرمي للبلاطات: القيم الأقل تجعل التسلسل أعمق، مما يزيد تعقيد الرسم.
Zoom levels: يعرض عدد مستويات التكبير (يعتمد على دقة بلاطات الخريطة وقيمة الخطأ الأرضي الأقصى).
Show debug panel: يتيح إظهار أو إخفاء لوحة بجوار عرض الخريطة ثلاثي الأبعاد تعرض خيارات للتحكم بشكل أفضل في التنقل في الخريطة ومعلومات التصحيح:
Show map tile info: يُضمّن الحدود وأرقام البلاطات لبلاطات التضاريس (مفيد لاستكشاف مشكلات التضاريس وإصلاحها)
Show bounding boxes: يُظهر الصناديق المحيطة ثلاثية الأبعاد لبلاطات التضاريس (مفيد لاستكشاف مشكلات التضاريس وإصلاحها)
Show light sources: يُظهر كرة عند مواضع مصادر الإضاءة، مما يسهّل إعادة تموضع مصادر الإضاءة ووضعها بالنسبة لمحتويات المشهد
Show debug overlay: طبقة مرئية علوية تعرض بعض معلومات التصحيح وقياس الأداء المفيدة، وتتيح على وجه الخصوص رؤية مخطط الإطارات (frame graph) ومخطط المشهد (scene graph) بسرعة
Debug Shadow Map: يرسم المشهد صورةً بالأحمر والأسود من منظور مصدر الإضاءة المستخدم للظلال (لاستكشاف الأخطاء وإصلاحها). يُضبط عنصر الواجهة بحجم Size متناسب مع حجم عرض الخريطة ثلاثي الأبعاد، ويُثبَّت في زاوية Corner.
Debug Depth Map: يرسم خريطة العمق للمشهد صورةً تكون فيها البكسلات الأقرب أغمق (لاستكشاف الأخطاء وإصلاحها). يُضبط عنصر الواجهة بحجم Size متناسب مع حجم عرض الخريطة ثلاثي الأبعاد، ويُثبَّت في زاوية Corner.Show camera info:
ملاحظة
عندما يكون عرض الخريطة ثلاثي الأبعاد مفتوحًا في نافذة مستقلة، يمكنك استخدام اختصار لوحة المفاتيح Ctrl+Shift+d للوصول إلى لوحة التصحيح.
7.2.3. إنشاء رسوم متحركة¶
تعتمد الرسوم المتحركة على مجموعة من الإطارات المفتاحية، وهي مواضع الكاميرا في أوقات محددة. لإنشاء رسوم متحركة:
انقر على الزر
Add keyframe وأدخل قيمة Keyframe time بالثواني. يعرض مربع التحرير والسرد Keyframe الآن الوقت المضبوط.باستخدام أدوات التنقل، حرّك الكاميرا إلى الموضع الذي تريد ربطه بوقت الإطار المفتاحي الحالي.
كرّر الخطوات السابقة لإضافة ما يلزم من إطارات مفتاحية (بوقتها وموضعها).
انقر على الزر
لمعاينة الرسوم المتحركة. سيولّد QGIS المشاهد باستخدام مواضع الكاميرا ودورانها في الأوقات المحددة، مع الاستيفاء بينها فيما بين هذه الإطارات المفتاحية. تتوفر أنماط مختلفة من Interpolation للرسوم المتحركة (مثل linear و inQuad و outQuad و inCirc... -- لمزيد من التفاصيل راجع https://doc.qt.io/archives/qt-5.15/qeasingcurve.html#EasingFunction-typedef).يمكن أيضًا معاينة الرسوم المتحركة بتحريك منزلق الوقت. يؤدي إبقاء المربع Loop مفعّلًا إلى تشغيل الرسوم المتحركة بشكل متكرر، بينما يؤدي النقر على
إلى إيقاف رسوم متحركة قيد التشغيل.
انقر على
Export animation frames لتوليد سلسلة من الصور تمثل المشهد. إلى جانب Template اسم الملف و Output directory، يمكنك ضبط عدد Frames per second وقيمتي Output width و Output height.
7.2.4. الطبقات المتجهية ثلاثية الأبعاد¶
يمكن عرض طبقة متجهية تحتوي على قيم ارتفاع في عرض الخريطة ثلاثي الأبعاد بتفعيل Enable 3D Renderer في قسم 3D View من خصائص الطبقة المتجهية. تتوفر عدة خيارات للتحكم في رسم الطبقة المتجهية ثلاثية الأبعاد.








