¿Está creando un parámetro de casilla de verificación en la herramienta de script Python para ArcGIS Desktop?

11

Estoy trabajando en la creación de una herramienta ArcGIS a partir de un script de Python que estoy escribiendo. Me pregunto si es posible tener un parámetro de casilla de verificación.

Quiero tener un parámetro en el que el usuario seleccione una clase de entidad, luego de la clase de entidad, el usuario elegirá el campo para la capa más alta en su modelo, luego quiero que el usuario pueda elegir qué capas quiere el script para ejecutar con una estructura de casilla de verificación derivada del campo de capa superior.

¿Es esto posible con Python y ArcGIS Desktop?

geoide
fuente

Respuestas:

12

Un código de muestra para una herramienta de script que tendrá una sola casilla de verificación. Si un usuario marca una casilla de verificación, la herramienta verificará la existencia de un archivo de datos especificado.

import arcpy
input_fc = r'C:\GIS\Temp\data_shp.shp'

    #getting the input parameter - will become a tool parameter in ArcGIS of Boolean type
    ischecked = arcpy.GetParameterAsText(0)

    #Important to convert the check box value to a string first.
    #Should be 'true' with the small case for 't',
    #not the 'True' as shown in the Python window in ArcGIS
    if str(ischecked) == 'true':
        arcpy.AddMessage("The check box was checked")
        result = arcpy.Exists(input_fc)
        #to return 'True' or 'False' depending on whether the data file exists
        #since it is a Boolean, important to convert it to a string
        arcpy.AddMessage(str(result))

    else: #in this case, the check box value is 'false', user did not check the box
        arcpy.AddMessage("The check box was not checked")

Recuerde agregar un parámetro de herramienta de tipo de datos booleanos al crear una nueva herramienta de secuencia de comandos en la aplicación ArcGIS Desktop. Este parámetro se mostrará automáticamente como una casilla de verificación cuando el usuario ejecute la herramienta.

ingrese la descripción de la imagen aquí

Alex Tereshenkov
fuente
7

Para ver cómo obtener una casilla de verificación en el cuadro de diálogo de una herramienta de secuencia de comandos de Python, intente usar un código de prueba como este:

inputString = arcpy.GetParameterAsText(0)
inputBoolean = arcpy.GetParameterAsText(1)

arcpy.AddMessage("String set to " + inputString)
arcpy.AddMessage("Boolean set to " + str(inputBoolean))

Luego, cuando agregue este script como herramienta, necesitará dos parámetros, el primero de Cadena de tipo de datos y el segundo de Booleano de tipo de datos.

PolyGeo
fuente