ArcGIS Desktop 용 Python 스크립트 도구에서 확인란 매개 변수를 작성 하시겠습니까?


11

필자가 작성하는 Python 스크립트에서 ArcGIS 도구를 만드는 중입니다. 확인란 매개 변수를 사용할 수 있는지 궁금합니다.

사용자가 피처 클래스를 선택하는 매개 변수를 갖고 싶습니다. 그런 다음 피처 클래스에서 사용자가 모델에서 최상위 레이어의 필드를 선택한 다음 사용자가 스크립트를 원하는 레이어를 선택할 수 있기를 원합니다. 최상위 레이어 필드에서 파생 된 확인란 구조로 실행합니다.

파이썬과 ArcGIS Desktop에서 가능합니까?

답변:


12

단일 확인란이있는 스크립트 도구의 샘플 코드입니다. 사용자가 확인란을 선택하면 도구는 지정된 데이터 파일이 있는지 확인합니다.

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

ArcGIS Desktop 애플리케이션에서 새 스크립트 도구를 생성 할 때 부울 데이터 유형의 도구 매개 변수를 추가해야합니다. 이 매개 변수는 사용자가 도구를 실행할 때 확인란으로 자동 표시됩니다.

여기에 이미지 설명을 입력하십시오


7

Python 스크립트 도구의 대화 상자에 확인란을 표시하는 방법을 보려면 다음과 같은 테스트 코드를 사용하십시오.

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

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

그런 다음이 스크립트를 도구로 추가 할 때는 첫 번째 데이터 유형 문자열과 두 번째 데이터 유형 부울 매개 변수가 필요합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.