اصطلاح
Geoprocessing تلفیق دو کلمه geographic و data processing است. Geoprocessing در حقیقت نحوه انجام عملیات ها و آنالیزهای GIS برروی داده های مکانی و غیرمکانی است. به طور ساده، GeoProcessing همان ابزارهایی است که در محیط ArcToolbox وجود دارد و کاربران ArcGIS به خوبی با آن آشنا هستند. این ابزارها برای مقاصد مختلفی استفاده می شوند، و همانطور که می دانید ابزارهای مرتبط با با یکدیگر در یک جعبه ابزار واحد دسته بندی شده اند. مثلا ابزارهای مدیریت داده ها در جعبه ابزار Data Management، ابزارهای تبدیل داده ها به یکدیگر در جعبه ابزار Conversion، ابزارهای تحلیل داده های رستر در جعبه ابزار Spatial Analyst و الی آخر.
هر کدام از این ابزارها یک یا چند پارامتر ورودی داشته و با انجام عملیاتی برروی ورودی ها، نتیجه ای را به عنوان خروجی تولید خواهد کرد. تعیین برخی پارامترهای ورودی الزامی بوده و مشخص کردن برخی دیگر اختیاری است. این ابزارها را می توان به شکل برنامه نویسی هم اجرا کرد. در اکثر موارد کدی که برای اجرای عملیاتی توسط این ابزارها نوشته می شود از کد معادل آن بدون استفاده از ابزارها خطوط بیشتری دارد.
اما نحوه اجرای این ابزارها از طریق برنامه نویسی چگونه است؟ همانطور که در مثال زیر می بینید، کلاس اصلی در این میان کلاس
Geoprocessor است. برای استفاده از این کلاس باید ارجاعی را به کتابخانه ESRI.ArcGIS.Geoprocessing به پروژه خود اضافه کرده و آن را به عنوان یکی از کتابخانه های موردنیاز با دستور Imports به کد خود افزوده باشید. این کلاس متدی به نام Execute دارد که ابزار موردنظر را اجرا می کند. هر ابزار نام خاصی دارد که از تلفیق با نام جعبه ابزار آن نام یکتا و منحصر به فردی را تشکیل می دهد. معمولا بین این دو نام علامت زیرخط (_) قرار می گیرد. برای اطمینان بیشتر از این نام یکتا بهتر است مدخل آن ابزار را در راهنمای ArcGIS نگاه کنید. در این راهنما، در قسمت Syntax شکل کلی استفاده از این ابزار برای محیط های برنامه نویسی ارائه شده است. اولین عبارت، همان نام یکتای ابزار است.
کد:
' Create the Geoprocessor object.
Dim GP As New GeoProcessor
Dim parameters As IVariantArray = New VarArray
' Populate the variant array with parameter values.
parameters.Add("c:\data\chap4\idcounty.shp")
parameters.Add("c:\data\chap4\idcountycopy2.shp")
GP.Execute("CopyFeatures_management", parameters, Nothing)
در ادامه Syntax، پارامترهای ورودی لایه مشخص شده اند. در جدول زیر آن نیز توضیح این پارامترها آمده است. پارامتری که دارای کلمه کلیدی optional باشد اختیاری بوده، در غیر این صورت ورود آن الزامی است. معمولا پس از این جدول مثال هایی از نحوه استفاده از ابزار در محیط برنامه نویسی پایتون آورده شده است.
برای ورود پارامترها به ابزار، از کلاس
VarArray استفاده می شود که رابط
IVariantArray را پیاده سازی می کند. این کلاس و رابط در کتابخانه ESRI.ArcGIS.esriSystem قرار دارند. متد
Add این رابط امکان افزودن پارامترها را فراهم می آورد. دقت کنید که پارامترها را به ترتیب مشخص شده در راهنما اضافه کنید. آرگومان آخر را نیز برابر با Nothing قرار دهید.