دیتاست ها و لایه ها در ArcObjects

شکل زیر ساختار سلسله مراتبی اشیاء نقشه و لایه را در ArcMap نشان می دهد. در بالای این سلسله مراتب Application قرار دارد که در این مورد نمایانگر برنامه ArcMap است. Application از اشیاء MxDocument تشکیل شده است؛ شی MxDocument از اشیاء Map و شی Map نیز از اشیاء Layer تشکیل شده است. شی Map معادل دیتافریم در محیط ArcMap است. لایه های برداری، لایه های رستری و لایه های TIN (شبکه نامنظم مثلثی) نمونه هایی از اشیاء Layer هستند.

فکر می کنم این سلسله مراتب برای شما روشن باشد. زمانی که برنامه ArcMap را باز می کنید در حقیقت در پس زمینه شی Application اجرا می شود. سپس در درون محیط برنامه ArcMap یک شی MxDocument باز می شود. شی MxDocument همان سندی است که از طریق منوی File>Save As… می توانید آن را با پسوند .mxd ذخیره کنید. به صورت پیشفرض این سند نقشه در ابتدای اجرای ArcMap عنوان Untitled را دارد، مگر این که شما برنامه ArcMap را با دوبارکلیک برروی فایلی با پسوند .mxd اجرا کرده باشید.

1 thumb دیتاست ها و لايه ها در ArcObjects

ساختار سلسله مراتبی کلاس های Application، MxDocument، Map و Layer در محیط ArcMap

شکل بعدی ساختار سلسله مراتبی دیتاست ها و اشیاء منبع داده را در کتابخانه Geodatabase نمایش می دهد. در بالای این سلسه مراتب کلاس انتزاعی WorkspaceFactory قرار دارد. تعداد زیادی coclass وجود دارد که خصیصه ها و متدهای کلاس WorkspaceFactory را به ارث می برند. این coclassها شامل ShapefileWorkspaceFactory، ArcInfoWorkspaceFactory، RasterWorkspaceFactory، AccessWorkspaceFactory و FileGDBWorkspaceFactory هستند که به ترتیب برای shapefile، coverage، لایه رستر، Geodatabase محلی (Personal geodatabase) و Geodatabase فایلی (File geodatabase) به کار می روند.

2 thumb دیتاست ها و لايه ها در ArcObjects

ساختار سلسله مراتبی کلاس های WorkspaceFactory، Workspace و دیتاست در Geodatabase

شی workspace factory می تواند یک workspace جدید را ایجاد کند. به طور مثال، متد OpenFromFile از رابط IWorkspaceFactory، با گرفتن مسیر یک فایل یا فولدر، رابط IWorkspace را برروی یک workspace برمی گرداند. با استفاده از رابط IWorkspace، می توانیم یک تغییر رابط (QI) به رابط IFeatureWorkspace انجام داده و دیتاست های برداری مانند shapefileها یا بقیه انواع feature class را باز کنیم یا این که به رابط IRasterWorkspace تغییر رابط داده و از این رابط برای بازکردن دیتاست های رستری استفاده کنیم. بنابراین، شی workspace نگهدارنده ای برای انواع مختلفی از دیتاست ها می تواند باشد.

کلاس انتزاعی dataset نمایانگر هر دو نوع داده مکانی و غیرمکانی است (شکل زیر). دو نوع dataset وجود دارد: GeoDataset و Table. شی GeoDataset دو خصیصه مهم Extent و SpatialReference دارد که به ترتیب محدوده مکانی و مرجع مکانی یک دیتاست مکانی را توصیف می کنند. همانطور که احتمالا حدس می زنید لایه های برداری، feature classها، دیتاست های رستر و لایه های رستر از انواع شی GeoDataset هستند. شی Table در حقیقت مجموعه ای از سطرها با اطلاعات ذخیره شده در ستون های آن است. جداول در فرمت متنی، جداول در فرمت dBASE و همچنین feature classها نمونه هایی از شی Table هستند.

3 thumb دیتاست ها و لايه ها در ArcObjects

ساختار سلسله مراتبی کلاس های WorkspaceFactory، Workspace و Dataset در Geodatabase

برنامه هایی که با workspace و دیتاست کار می کنند اغلب از شی دیگری نیز بهره می برند. این شی، شی Name است. شی Name، یک شی Geodatabase مانند یک شی workspace یا یک شی دیتاست را تعیین می کند. هر شی Name، نسخه ای سبک از یک شی است که تعدادی محدود از خصیصه ها و متدها را داراست. در بین این متدها، متد Open وجود دارد که به برنامه نویس اجازه می دهد یک نمونه از شی واقعی را دریافت کند.

مطالب مرتبط

نظر بدهید

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