Как обработать «лишнюю дыру» в шейп-файле многоугольника в R или ArcGIS?

Я пытаюсь сделать пространственное наложение между двумя полигонами ("grd" и "range" ), используя функцию наложения (rgeos ).

Этот код работает для всех файлов, кроме одного:

range.grd.overlay <- grd[!is.na(over(grd, range)), ]@data$grdID # get gridcells that overlap with range

и получите это сообщение об ошибке:

Error in createPolygonsComment(p) : 
  rgeos_PolyCreateComment: orphaned hole, cannot find containing polygon for hole at index 9

Я понимаю, что где-то в шейп-файле есть дыра без окружающего полигона, но я не могу понять, как ее обойти. Могу ли я просто удалить дыру в индексе 9? Как ? Если у вас есть решение по исправлению шейп-файла в ArcGIS, меня это тоже устроит.

Заранее большое спасибо за помощь!!

С уважением, Карстен

17
задан user1012744 11 July 2012 в 12:51
поделиться