ArcGIS Python脚本使用

前文中我们介绍了在IDE中如何使用arcpy工具来建立脚本,建立脚本的目的是为了简化工作量并进行批处理,如何在ARCGIS环境中调用我们编写的脚本呢?

示例如下,分为几个方面:1、参数脚本的生成 2、ArcGIS环境添加Python脚本

1、脚本生成

# coding=utf-8
import sys
reload(sys)
sys.setdefaultencoding('utf-8')

import arcpy
path = arcpy.GetParameter(0)
arcpy.env.workspace = path
fcs = arcpy.ListFeatureClasses()
fcCount = len(fcs)
for fc in fcs:
    arcpy.SetProgressorLabel("要素"+fc+"...")
    try:
        arcpy.RepairGeometry_management(fc)
        arcpy.AddMessage(fc + " had repair geometry ")
    except:
        arcpy.AddError(fc+"修复失败")
上述脚本实现的功能很简单,遍历FileGDB下面的所有要素类,然后进行修复几何操作
2、ArcGIS 环境添加使用脚本
(1)添加脚本。在catalog窗口新建工具箱,并点击添加脚本,如下图
(2)设置参数名称和类型
在这个参数中我们还可以进行进一步的过滤设置,为其制定工作空间的类型,文件、数据库、SDE

最后选择第二项进行文件夹数据库过滤

(3)ArcGIS环境中调用脚本,添加完成之后就如同一个ToolBox正常使用这个工具

在执行过程中就会有相应的信息在结果窗口中显示,

   arcpy.AddMessage(fc + " had repair geometry ") 这个语句用来对处理结果进行信息显示

 arcpy.SetProgressorLabel("要素"+fc+"...") 这一语句用来进行处理进度条的显示,但是有中文乱码问题,在使用过程中推荐使用英文状态,如果有高手知道为什么请留言
后续:中文乱码问题可以使用
# -*- coding: cp936 -*-  字符集来解决

转载自:https://blog.csdn.net/qingyimengwu/article/details/42977409

You may also like...