모양 영역 필드 이름 결정


9

다양한 공간 폴리곤 파일 (셰이프 파일, 파일 / 개인 gdb 피처 클래스, sde 피처 클래스 (일부 공간 뷰 포함))을 처리하고 있으며 파일 유형에 따라 다양한 셰이프 영역 피처 클래스 필드 이름 ( 작성된 필드가 아닌 필수 필드)

예를 들어 필드 이름은 "Shape_Area", "SHAPE_Area", "SHAPE.AREA", "GEOMETRY_Area", "GEOMETRY.AREA"와 다릅니다.

이 모든 유형의 기능 클래스 영역을 꺼내기 위해 Python 스크립트를 작성 중이며 다음 행을 따라 무언가를 수행합니다.

for field in arcpy.ListFields(fc):
    if field.name in ["Shape_Area", "SHAPE_Area", "SHAPE.AREA", "GEOMETRY_Area", "GEOMETRY.AREA"]:
         do something

이름을 지정할 수있는 모든 방법을 나열하는 대신 모양 영역 필드를 끌어내는 더 영리한 방법이 있는지 궁금합니다. Area와 같은 필드 속성이없는 것 같습니다. 다른 방법이 있습니까?

답변:


12

다음은 어떻습니까 :

fc = "path to input feature class"
desc = arcpy.Describe(fc)
areafieldname = desc.areaFieldName

자동 생성 된 영역 필드가있는 다양한 피쳐 클래스에서 작동해야합니다. 셰이프 파일은 제외됩니다.


고마워 Barbarossa. 필드를 설명하는 방법을 찾고 있었고 검색에 나타나지 않았기 때문에 Describe에서 해당 속성을 놓쳤습니다. 완벽하게 작동합니다.
— Mike
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.