ArcPy 创建图层空间索引

使用Python脚本进行图层的空间索引的创建。

附上Python代码:

 1 # -*- coding: utf-8 -*-
 2 # nightroad
 3 import sys
 4 import arcpy
 5 reload(sys)
 6 sys.setdefaultencoding( "utf-8" )
 7 path = r"C:\Users\Administrator\AppData\Roaming\ESRI\Desktop10.0\ArcCatalog\test.sde"
 8 arcpy.env.workspace = path
 9 DSs = arcpy.ListDatasets()
10 # 只对test数据集内的数据进行处理
11 arcpy.env.workspace = str(path) + "\\" + 'test'
12 ff = arcpy.ListFeatureClasses()
13 for fc in ff:
14     try:
15         desc = arcpy.Describe(fc)
16         if (desc.shapeType == "Point") or (desc.shapeType == "MultiPoint"):
17             arcpy.AddSpatialIndex_management(fc, 0, 0, 0)
18             print('Success:' + fc + '  Create Spatial index Completed')
19         else:
20              indexs = arcpy.CalculateDefaultGridIndex_management(fc)
21              index = int(indexs[0])
22              #针对线面对象创建三层索引
23              arcpy.AddSpatialIndex_management(fc, index, 3*index, 9*index)
24              print('Success:' + fc + '  Create Spatial index Completed')
25     except:
26         print('Failed:' + fc + " error")

 

posted on 2018-07-26 13:26  Nightroad  阅读(712)  评论(0编辑  收藏  举报

导航