Şekil Alanının Belirlenmesi Alan Adı


9

Ben uzamsal çokgen dosyaları (şekil dosyaları, dosya / kişisel gdb özellik sınıfları, sde özellik sınıfları (bazı uzamsal görünümleri ile)) çeşitli ile ilgileniyorum ve dosya türüne bağlı olarak, Şekil Alanı özellik sınıfı alan adları ( gerekli alan, oluşturulan alan değil)

Örneğin, alan adları "Shape_Area", "SHAPE_Area", "SHAPE.AREA", "GEOMETRY_Area", "GEOMETRY.AREA" arasında değişir.

Özellik sınıflarının tüm bu tür alan çıkarmak için bir python komut dosyası yazıyorum ve satırları boyunca bir şeyler yapmak:

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

Sadece adlandırılabilir tüm yolları listelemek yerine, şekil alanı alanını çekmenin daha akıllı bir yolu olup olmadığını merak ediyorum? Alan gibi bir şey için bir tarla mülkü yok gibi görünüyor. Bunu yapmanın başka bir yolu var mı?

Yanıtlar:


12

Aşağıdakiler ne olacak:

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

Otomatik olarak oluşturulan Alan alanlarına sahip çeşitli özellik sınıflarında çalışmalıdır. Bu şekil dosyalarını hariç tutacaktır.


Teşekkürler Barbarossa. Alanları tarif etmenin yollarını arıyordum ve aramamda yer almadığı için Describe'daki bu özelliği kaçırmış olmalıydım. Mükemmel çalışıyor.
Mike
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.