我正在运行一个查询,从一组多边形中选择一个多边形。然后,我将多边形输入到地理数据库中的特征数据集中。然后,我使用这个多边形(或一组多边形)来溶解,以获得多边形的边界和多边形的质心,并在地理数据库中输入单独的特征数据集。
import arcpy, os
#Specify the drive you have stored the NCT_GIS foler on
drive = arcpy.GetParameterAsText(0)
arcpy.env.workspace = (drive + ":\\NCT_GIS\\DATA\\RF_Properties.gdb")
arcpy.env.overwriteOutput = True
lot_DP = arcpy.GetParameterAsText(1).split(';')
PropertyName = arcpy.GetParameterAsText(2)
queryList= []
for i in range(0,len(lot_DP)):
if i % 2 == 0:
lt = lot_DP[i]
DP = lot_DP[i+1]
query_line = """( "LOTNUMBER" = '{0}' AND "PLANNUMBER" = {1} )""".format(lt, DP)
queryList.append(query_line)
if i < (len(lot_DP)):
queryList.append(" OR ")
del queryList[len(queryList)-1]
query = ''.join(queryList)
#Feature dataset for lot file
RF_Prop = drive + ":\\NCT_GIS\\DATA\\RF_Properties.gdb\\Lots\\"
#Feature dataset for the property boundary
RF_Bound = drive + ":\\NCT_GIS\\DATA\\RF_Properties.gdb\\Boundary\\"
#Feature dataset for the property centroid
RF_Centroid = drive + ":\\NCT_GIS\\DATA\\RF_Properties.gdb\\Centroid\\"
lotFile = drive + ":\\NCT_GIS\\DATA\\NSWData.gdb\\Admin\\cadastre"
arcpy.MakeFeatureLayer_management(lotFile, "lot_lyr")
arcpy.SelectLayerByAttribute_management("lot_lyr", "NEW_SELECTION", query)
#Create lot polygons in feature dataset
arcpy.CopyFeatures_management("lot_lyr", RF_Prop + PropertyName)
#Create property boundary in feature dataset
arcpy.
arcpy.Dissolve_management(RF_Prop + PropertyName , RF_Bound + PropertyName, "", "", "SINGLE_PART", "DISSOLVE_LINES")
#Create property centroid in feature dataset
arcpy.FeatureToPoint_management(RF_Bound + PropertyName, RF_Centroid + PropertyName, "CENTROID")每次运行这个程序时,除了将很多层复制到地理数据库中时,尝试向geodatabase添加任何内容时都会出现一个错误。我尝试过不将这些批号复制到地理数据库中,并将其复制到一个shapefile中,然后使用该文件,但仍然不会将边界和质心导入到地理数据库中。我尝试将边界输出到shapefile中,然后使用FeatureClassToGeodatabase工具,但仍然得到了一个又一个错误。
如果有人能弄清楚这件事,它会很感激的。
发布于 2015-01-27 03:02:52
根据我的经验,我发现如果我最近打开了,然后关闭了ArcMap或ArcCatalog,那么即使关闭了ArcMap和ArcCatalog,它也会继续运行两个ArcGIS服务(检查任务管理器)。如果我尝试在这两个服务运行时运行一个脚本,我就会得到这个错误。在Windows任务管理器中找到这些服务并结束它们,为我修复了这个错误。这两项服务是
我还听说您的计算机安全/防病毒软件可能会干扰脚本的运行。因此,将您的工作目录作为例外添加到您的安全软件中也可能有帮助。
如果在罕见的情况下,这不起作用,我只需要重新启动计算机。
https://stackoverflow.com/questions/22110542
复制相似问题