اسکریپت نویسی با پایتون در ArcGIS, ArcGIS Pro
مدرس : بهنام محمودیان
مدت : 20 ساعت
پایتون یکی از زبان های برنامه نویسی ساده و در عین حال قدرتمند است، به طوری که ESRI در نسخه ArcGIS ، پایتون را جایگزین VBA نمود. هم اکنون بسیاری از شرکت ها و سازمان های بزرگ از جمله Google، ESRI، NASA از پایتون استفاده میکنند.
هدف از اسکریپت نویسی پایتون در ArcGIS، خودکار سازی( Automating) عملیات های پردازش مکانی است. شرکت ESRI تولید کننده نرم افزارهای ArcGIS با معرفی پکیج ArcPy در ArcGIS 10، انقلاب بزرگی در اسکریپت نویسی پایتون ایجاد نمود، به طوری که کاربران بدون صرف زمان زیاد و با سرعت پردازش بیشتری، قادر به انجام فرایندهای پردازش مکانی هستند. گستره استفاده از پایتون در ArcGIS Pro میتواند ازچندین خط کوتاه اسکریپت نویسی تا تحلیل های پیچیده و تولید ابزار های کارامد همچون Multiple Ring Buffer و Spline With Barriers و بسیاری از ابزار های دیگر ArcGIS باشد . امروزه با توجه به حجم و تعداد زیاد داده های مکانی ، نیاز کارفرما و نیاز به تحلیل های پیچیده، نیاز به خودکار سازی فرایند های تحلیل، امری غیر قابل اجتناب است.
یکی از ویژگی های اسکریپت نویسی با پایتون خودکار سازی آن بر اساس زمان معین میباشد. به طوری که فرایند پردازش در زمان های تعیین شده توسط کاربر انجام شود.همچنین از اسکریپت تولید شده میتوان در توسعه نرم افزار و همراه با سرویس های Geoprocessing در وب نیز استفاده نمود. در سال های آتی باید منتظر پیشرفت های بیشتری در استفاده از اسکریپت نویسی پایتون در ArcGIS Pro باشیم .
یادگیری پایتون برای تمامی افرادی که همواره در چالش با تحلیل های مکانی و در صدد خودکارسازی فرایند کاری خود، کاهش زمان صرف شده برای انجام کار، مخصوصا کار با تعداد داده های زیاد هستند و یا در پی پیشرفتی قابل توجه در حیطه GIS هستند ، توصیه میشود.
۱-۱- پیشنیاز :
ArcGIS2, ArcGIS1 ، ترجیحا آشنایی با اصول برنامه نویسی و ترجیحا ArcGIS 3D Analyst & Spatial Analyst
1-2- توانمندی های کاربران در پایان دوره:
۱- آشنایی با اصول برنامه نویسی پایتون
۲- استفاده از Arcpy برای تحلیل های مکانی و دستکاری داده ها
۳- عملیات پردازش به طور خودکار بر روی تعداد داده های زیاد (برای مثال جستجوی یک لایه در بین تعداد زیادی لایه و انجام عملیات پردازش بر روی آن)
۴- استفاده از فایل های متنی در پایتون
۵- کار کردن با رسترها : شامل عملیات پردازش بر روی رستر ها و map algebra
6- استفاده از ماژول mapping در پروژه ها ، dataframe ها و layout
7- ساختن کلاس ها و توابع و استفاده از آنها
۸- تولید ابزار در Arctoolbox با استفاده از اسکریپت تولید شده
۹- خودکارسازی زمانی پردازش ها
در هر جلسه پروژه ای برای تمرین در اختیار کاربران قرار خواهد گرفت .
۱-۳- زمان بندی دوره
ردیف | شرح | ساعت |
۱ | چرا از پایتون استفاده میکنیم؟ | نیم ساعت |
۲ | مقدمه ای بر اصول برنامه نویسی با پایتون | ۳ ساعت و نیم |
۳ | استفاده از ArcPy و جستجوی داده های مکانی | ۳ ساعت و نیم |
۴ | کار با جداول داده های مکانی | ۲ ساعت و نیم |
۵ | کار با داده های رستری | ۴ ساعت |
۶ | مهارتهای تخصصی در پایتون | ۶ ساعت و نیم |
جمع |
20 ساعت |
۲- سرفصل دوره برنامه نویسی پایتون
۲-۱- مقدمه
چرا از پایتون استفاده میکنیم؟
انتخاب Editor مناسب برای پایتون
استفاده از Python Window
نوشتن و اجرای کد در Python Window
2-2- مقدمه ای بر اصول برنامه نویسی با پایتون :
کار با اعداد (Numbers)
کار با متغیر ها
کار با String
کار با List ها
استفاده از توابع
استفاده از متد ها
کار با مسیر فایل ها و پوشه ها
کار با ماژول ها
استفاده از دستورات شرطی
استفاده از دستورات loop
کامنت در پایتون
۲-۳- استفاده از ArcPy و جستجوی داده های مکانی :
کار با توابع و کلاس های ArcPy
چک کردن داده های موجود
استفاده از Describe
لیست کردن داده ها
۲-۴- کار با جداول داده های مکانی :
استفاده از Cursor
استفاده از SQL در پایتون
کار با نام فیلد ها
کار با فایل های Text
2-5- کار با داده های رستری:
لیست کردن و Describe
کار با آبجکت های رستر
کار با ماژول Spatial Analyst
2-6- مهارتهای تخصصی در پایتون
Map scripting
Debugging و error handling
ساخت تابع پایتون
کار با پکیج ها
ساخت ابزار با استفاده از python
منابع مورد استفاده :
A byte of python
Learning python
Python scripting for ArcGIS