أكثر

طباعة موقع فئة المعالم باستخدام ArcPy

طباعة موقع فئة المعالم باستخدام ArcPy


أرغب في معرفة مسار فئة المعالم الموجودة في جدول المحتويات في ArcMap ، كيف يمكن القيام بذلك باستخدام ArcPy؟


إذا قمت بتعيين ملفmxd_pathمتغيرًا إلى مسار ملف مستند الخريطة الخاص بك ، سيعيد الكود التالي اسم جميع طبقات المعالم في mxd جنبًا إلى جنب مع مسار ملف مصدر البيانات المقابل. إذا كنت ترغب في إرجاع طبقة / فئة معالم محددة فقط ، فقم بتعيين ملفاسم_الطبقةمتغير لما يظهر لتلك الطبقة في جدول محتويات ArcMap.

استيراد arcpy من arcpy import mapping mxd_path = 'path / to / your / mxd / here / name_of_mxd.mxd' layer_name = '*' mxd = mapping.MapDocument (mxd_path) لـ lyr in mapping.ListLayers (mxd، layer_name): if lyr .isFeatureLayer: print 'Layer Name: {0}'. format (lyr.name) print 'Layer Path: {0}  n'.format (lyr.dataSource)

سيؤدي هذا إلى طباعة جميع الطبقات داخل mxd إذا قمت بنسخ مسار mxd الخاص بك إلى mapPath.

يوضح هذا الطرق الأخرى التي يمكن استدعاؤها على كائن طبقة:
http://resources.arcgis.com/ar/help/main/10.1/index.html#//00s300000008000000

استيراد arcpy def printLayerDataSource (mxd): lyrList = arcpy.mapping.ListLayers (mxd) #returns list of type layer ، مضمنة في map mxd للطبقة في lyrList: #goes من خلال جميع الطبقات داخل mxd معين: .dataSource print (layerource) باستثناء: print ("error") def main (): mapPath = "pathToMXD" mxdObject = arcpy.mapping.MapDocument (mapPath) printLayerDataSource (mxdObject) main ()