Creazione del parametro checkbox nello strumento di script Python per ArcGIS Desktop?


11

Sto lavorando alla creazione di uno strumento ArcGIS da uno script Python che sto scrivendo. Mi chiedo se è possibile avere un parametro checkbox.

Voglio avere un parametro in cui l'utente seleziona una classe di caratteristiche, quindi dalla classe di caratteristiche l'utente sceglierà il campo per il livello più alto nel suo modello, quindi voglio che l'utente sia in grado di scegliere quali livelli vogliono lo script eseguire con una struttura di casella di controllo derivata dal campo più in alto del livello.

Questo è possibile con Python e ArcGIS Desktop?

Risposte:


12

Un codice di esempio per uno strumento di script che avrà una singola casella di controllo. Se una casella di controllo verrà selezionata da un utente, lo strumento verificherà l'esistenza di un file di dati specificato.

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")

Ricordarsi di aggiungere un parametro dello strumento di tipo booleano durante la creazione di un nuovo strumento di script nell'applicazione ArcGIS Desktop. Questo parametro verrà automaticamente mostrato come una casella di controllo quando l'utente esegue lo strumento.

inserisci qui la descrizione dell'immagine


7

Per vedere come ottenere una casella di controllo nella finestra di dialogo di uno strumento di script Python, prova a utilizzare un codice di test come questo:

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

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

Quindi quando aggiungi questo script come strumento avrai bisogno di due Parametri, il primo di Tipo di dati String e il secondo di Tipo di dati booleano.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.