工具箱属性中有验证参数(如下图),该部分主要用于工具箱参数是否符合我们的要求,主要包含3方面的函数,分别是在打开工具箱调用的initializeParameters()、修改参数值后调用updateParameters()、为参数设置消息提示updateMessages()。
我们主要修改的函数为updateParameters()
def updateParameters(self):
# 修改参数值和属性。
# 在标准验证之前,每次修改参数时都会调用该函数。
shpdescribe= arcpy.Describe(self.params[0].value)
if shpdescribe.shapeType == "Point":
self.params[1].enabled = False
self.params[2].enabled = False
else:
self.params[1].enabled = True
self.params[2].enabled = True
return
新建工具箱
打开工具箱
输入点数据
输入其他类型数据使其恢复原来参数个数
关注微信公众号进入arcpy技术交流群