تجسم و مسیریابی شبکه پایه (QGIS3) 

ایجاد، تجسم و مدیریت شبکه ها بخش مهمی از GIS است. بسیاری از انواع زیرساخت‌های فیزیکی مانند جاده‌ها، راه‌آهن‌ها، خدمات شهری را می‌توان به عنوان شبکه‌هایی با خطوط و گره‌ها – با ویژگی‌های متصل به آنها مدل‌سازی کرد. در این آموزش، نحوه مدل‌سازی شبکه‌های جاده‌ای را یاد می‌گیریم و از برخی تکنیک‌های سبک برای تجسم ویژگی‌های مسیریابی استفاده می‌کنیم. ما همچنین از ابزارهای داخلی QGIS3 برای تجزیه و تحلیل شبکه استفاده خواهیم کرد که برای یافتن کوتاهترین مسیر بین ۲ نقطه همراه با شبکه.

نمای کلی کار 

ما یک لایه بلوک جاده را برای واشنگتن دی سی می گیریم، اتصال را تجسم می کنیم و یک شبکه برای پیدا کردن کوتاه ترین مسیر بین هر ۲ نقطه در شهر ایجاد می کنیم.

 خواهید گرفت

  • نحوه استفاده از لغو تعریف شده داده برای تراز کردن نماد فلش بر اساس جهت خط.

دریافت داده ها 

دولت ناحیه کلمبیا صدها مجموعه داده را آزادانه در کاتالوگ داده باز به اشتراک می گذارد .

بلوک جاده ای را که توسط داده های DCGISopendata به اشتراک گذاشته شده است را به عنوان یک فایل شکل دانلود کنید .

../../_images/data11.pngبرای راحتی کار، می‌توانید مستقیماً یک نسخه از مجموعه داده‌ها را از لینک‌های زیر دانلود کنید:

Roadway_Block-shp.zip

منبع داده: [DCOPENDATA]

  1. Roadway_Block-shp.zipفایل دانلود شده را در پنل مرورگر پیدا کنید . آن را گسترش دهید و Roadway_Block.shpفایل را به بوم بکشید.
../../_images/115.png
  1. Roadway_Blockیک لایه خط جدید به نام اضافه شده به پنل لایه ها را خواهید دید . این لایه نشان دهنده هر جاده در واشنگتن دی سی است. ابزار Identify را در نوار ابزار Attributes انتخاب کنید . روی هر بخش جاده کلیک کنید تا ببینید چه ویژگی هایی به آن متصل شده است. ویژگی های استاندارد مانند Route-name، Road-type و غیره وجود دارد. یک ویژگی به نام وجود دارد SUMMARYDIR. این یک ویژگی مهم برای مسیریابی است زیرا مشخص می کند که قطعه دو طرفه یا یک طرفه است. این شامل ۴ مقدار مختلف است. BD(هر دو جهت) برای خیابان های دو طرفه. OB(خارج از مرز) برای خیابان های یک طرفه که در آن تردد در جهت خط مجاز است (نقطه شروع تا پایان) و IB(In Bound) برای خیابان های یک طرفه که ترافیک در خلاف جهت خط جریان دارد. . همچنین ارزشی وجود دارد ??که ترافیک دو طرفه را در نظر بگیریم. اکنون از اطلاعات موجود در آن ویژگی برای نمایش یک فلش در خیابان های یک طرفه استفاده می کنیم.
../../_images/213.png
  1. روی دکمه Open the layer Styling Panel در پنل Layers کلیک کنید . Rule-basedرندر را از منوی کشویی انتخاب کنید .
../../_images/310.png
  1. ما یک سبک جدید با فیلتر فقط برای جاده های یک طرفه ایجاد خواهیم کرد. روی دکمه Add rule + کلیک کنید .
../../_images/42.png
  1. در گفتگوی ویرایش قانون ، روی دکمه Expression کلیک کنید .
../../_images/52.png
  1. در گفتگوی سازنده رشته Expression ، بخش Fields and Values ​​را در پنل میانی گسترش دهید. ویژگی را انتخاب کنید SUMMARYDIRو روی All Unique در پنل سمت راست کلیک کنید. ۴ مقداری که قبلاً در مورد آنها صحبت کردیم ظاهر می شوند. داشتن این مقادیر در اینجا به عنوان یک مرجع به هنگام ساخت عبارت کمک می کند. همچنین، می توانید روی هر مقداری دوبار کلیک کنید تا آنها را به عبارت اضافه کنید.
../../_images/62.png
  1. هدف ایجاد عبارتی است که تمام خیابان های یک طرفه را انتخاب کند. عبارت زیر را وارد کرده و روی OK کلیک کنید .
"SUMMARYDIR" in ('IB', 'OB')

../../_images/72.png

  1. سپس نوع لایه Symbol را به .Marker line
../../_images/82.png
  1. در زیر نشانگر قرار دادن را انتخاب کنید .on center point
../../_images/92.png
  1. روی نماد کلیک کنید. به پایین بروید و نشانگر را انتخاب کنید. خواهید دید که علامت فلش مانند اکنون در خیابان های یک طرفه ظاهر می شود. اما همه آنها به یک جهت اشاره می کنند، در حالی که ما می دانیم که فیلتر ما شامل جاده هایی در چندین جهت است. ما می‌توانیم نمادها را با یک لغو تعریف‌شده از داده برای مقدار Rotation اصلاح کنیم .Simple markerfilled_arrowhead
../../_images/105.png
  1. روی دکمه لغو تعریف داده‌ها در کنار چرخش کلیک کنید .
../../_images/116.png
  1. می توانیم یک عبارت شرطی قرار دهیم که بسته به جهت یک طرفه، مقادیر چرخش متفاوتی را برمی گرداند. چرخش ۱۸۰ درجه برای جاده با جهت مخالف، جهت را کامل می‌کند، در این حالت، جاده‌های با IBویژگی را ۱۸۰ درجه می‌چرخانیم، بنابراین همه جاده‌ها جهت جریان ترافیک صحیح را خواهند داشت. عبارت زیر را وارد کرده و روی OK کلیک کنید .
if( "SUMMARYDIR" = 'IB', 180, 0)

../../_images/125.png

  1. اکنون سر پیکان ها را می بینید که در جهت درست جاده تراز شده اند. برای بی نظم نگه داشتن استایل، پیکان ها را فقط در خیابان های یک طرفه نمایش می دهیم. خیابان های بدون برچسب دو طرفه فرض می شوند. اکنون که سبک شبکه را به درستی طراحی کرده ایم، می توانیم تحلیلی انجام دهیم. به پردازش ‣ جعبه ابزار بروید .
../../_images/134.png
  1. الگوریتم تحلیل شبکه ‣ کوتاهترین مسیر (نقطه به نقطه) را جستجو و مکان یابی کنید . برای راه اندازی آن دوبار کلیک کنید.
../../_images/144.png
  1. در گفتگوی Shortest Path (نقطه به نقطه) ، Roadway_Blockبه عنوان لایه برداری نشان دهنده شبکه را انتخاب کنید . نوع Path را نگه دارید تا به صورت محاسبه شود Shortest. بعد، باید یک نقطه شروع و پایان را انتخاب کنیم. می توانید روی دکمه  کلیک کنید و روی هر نقطه از شبکه در بوم کلیک کنید. اگر می خواهید نتایج را در این آموزش تکرار کنید، می توانید -۷۶٫۹۹۷۳۰۰۹۲۱۶۶۳۹۶,۳۸٫۸۸۷۶۲۴۸۴۶۷۴۸۹۸۴به عنوان نقطه شروع و -۷۶٫۹۹۱۵۴۸۳۱۰۶۲۱۵۲,۳۸٫۸۹۱۵۱۰۰۰۵۶۹۹۲۹به عنوان نقطه پایان وارد کنید . بخش پارامترهای پیشرفته را گسترش دهید . SUMMARYDIRبه عنوان قسمت جهت انتخاب کنید . شما باید با مقادیر جهت یک طرفه برای جریان ترافیک رو به جلو و عقب آشنا باشید. مقدار OBرا برای جهت رو به جلو و مقدار IBرا برای جهت عقب وارد کنید . سایر گزینه ها را در مقادیر پیش فرض نگه دارید و روی Run کلیک کنید .
../../_images/154.png
  1. الگوریتم از هندسه لایه و پارامترهای ارائه شده برای ساخت یک نمودار شبکه استفاده می کند. سپس از این نمودار برای یافتن کوتاه ترین مسیر بین نقطه شروع و پایان استفاده می شود. پس از اتمام الگوریتم، یک لایه جدید به پنل لایه ها اضافه می شود که کوتاه ترین مسیر بین نقطه شروع و پایان را نشان می دهد.Shortest path
../../_images/164.png
  1. خواهید دید که مسیرهای ممکن زیادی بین نقطه شروع و پایان وجود دارد. اما با توجه به محدودیت های شبکه – مانند یک طرفه بودن، نتیجه کوتاه ترین مسیر ممکن است. همیشه ایده خوبی است که تحلیل ها و فرضیات خود را تأیید کنید. یکی از راه‌های آسان برای تأیید اعتبار این است که از یک سرویس نقشه‌برداری شخص ثالث استفاده کنید تا ببینید آیا نتایج آنها با نتایجی که ما به دست آورده‌ایم مطابقت دارد یا خیر. در اینجا کوتاه ترین مسیر پیشنهادی توسط Google Maps بین همان نقطه شروع و پایان است. همانطور که می بینید کوتاه ترین مسیر توصیه شده دقیقاً با نتایج ما مطابقت دارد – تأیید تجزیه و تحلیل ما.
../../_images/174.png

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


دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

خانهدربارهتماسارتباط با ما