Кількість частин не дасть правильної відповіді . У вас може бути багатокутний багатокутник без отворів. Дивіться зображення нижче за сценарієм.
Це був би простий запит до ArcGIS 10, як ви могли б покликати ArcObjects, щоб запитати, чи в полігоні була дірка, але ESRI видалила значну частину цієї підтримки в середовищі VBScripting до такої точки, що зараз є досить марною, трохи соромно ...
У будь-якому випадку ви можете вирішити це питання за допомогою якогось Python:
def hasHole(geom):
parts = geom.partCount
boundaries = geom.boundary().partCount
if boundaries > parts:
return 1
else:
return 0
У полі виразів ви розмістите таке:
hasHole(!Shape!)