ساختن نقشه های بوم تعاملی (QGIS3)
این آموزش نحوه به روز رسانی پویا ویژگی ها را با حرکت مکان نما در بوم QGIS نشان می دهد. ما براشینگ بوم را با استفاده از عبارات اجرا می کنیم تا ویژگی ها به حرکت مکان نما پاسخ دهند.
نمای کلی کار
ما شبکهای از آیکونهای QGIS ایجاد میکنیم و برای چرخش آیکونها یک جایگزین تعریفشده داده اعمال میکنیم تا آیکونها از حرکت مکاننما پیروی کنند.

۱٫ ما با ایجاد یک شبکه شروع می کنیم. برای ایجاد شبکه خود با گستره های جهانی، می توانیم نقشه جهان را روی بوم بارگذاری کنیم. می توانید worldدر کادر مختصات در پایین پنجره QGIS تایپ کرده و Enter را فشار دهید . این یکی از چندین تخم مرغ پنهان در QGIS است. می توانید سایر تخم مرغ های عید پاک را در کانال یوتیوب ما کشف کنید .
- یک لایه جدید به پنل لایه های QGIS اضافه می شود . به بروید .
World Map
- جستجو و مکان یابی . برای باز کردن آن دوبار کلیک کنید.
- در گفتگوی Create grid ، روی منوی کشویی کلیک کنید .
- سپس فاصله افقی و فاصله عمودی را روی
۲۰درجه تنظیم کنید. روی...دکمه کنار Grid کلیک کنید و Save to File را انتخاب کنید . به پوشه ای در رایانه خود بروید و نام آن را وارد کنیدgrid.gpkg. روی Run کلیک کنید .
- یک لایه جدید
gridاضافه خواهد شد. روی دکمه Open the layer styling panel در پنل لایه ها کلیک کنید . بر روی نشانگر ساده کلیک کنید .
- در منوی کشویی، نوع نماد را انتخاب کنید.
SVG Marker
- به بخش مرورگر SVG بروید و پوشه logos را انتخاب کنید . نماد QGIS را انتخاب کنید.
- به گزینه Size بروید و اندازه را روی
۵.
- در مرحله بعد، گزینه Rotation را پیدا کرده و روی دکمه override تعریف شده داده کلیک کنید . ویرایش … را انتخاب کنید .
- ما یک عبارت اضافه می کنیم که به صورت پویا چرخش نماد را بر اساس موقعیت مکان نما محاسبه می کند. از آنجایی که نماد ما به سمت ۱۳۵ درجه اشاره می کند، این چرخش ۰ خواهد بود. همانطور که مکان نما حرکت می کند، عبارت زاویه آزیموت بین نماد و مکان مکان نما را محاسبه می کند و زاویه ای را که برای اشاره به مکان نما باید بچرخاند محاسبه می کند. عبارت زیر را وارد کرده و روی OK کلیک کنید .
degrees(azimuth(@geometry, @canvas_cursor_point)) - 135
- بوم نقشه هنوز به حرکت مکان نما پاسخ نمی دهد زیرا تا زمانی که نقشه را جابجا نکنید، تازه نمی شود. بیایید آن را بهروزرسانی خودکار کنیم. روی لایه کلیک راست کرده
gridو Properties را انتخاب کنید .
- به تب Rendering بروید . به پایین اسکرول کنید و لایه Refresh را با فاصله بررسی کنید . فاصله را روی یک عدد کوچک مانند
۰٫۱(یعنی ۱۰۰ میلیثانیه) تنظیم کنید و روی OK کلیک کنید .
- به پنجره اصلی برگردید، لایه را خاموش کنید. اکنون با حرکت مکان نما، تمام نمادها به سمت موقعیت فعلی شما می چرخند.
World Map
- این تمرین سرگرمکننده برای کمک به درک نحوه استفاده از متغیر @canvas_cursor_point برای ایجاد لایههای پویا که به حرکت ماوس پاسخ میدهند، طراحی شده است.















اگر می خواهید بازخورد بدهید یا تجربه خود را در مورد این آموزش به اشتراک بگذارید، لطفاً در زیر نظر دهید. (به حساب GitHub نیاز دارد)