Solución:
Probaría la herramienta Unión con NO_GAPS:
NO_GAPS: se creará una entidad para las áreas de la salida que estén completamente encerradas por polígonos. Esta característica tendrá atributos en blanco.
Luego, puede seleccionar las entidades con atributos en blanco por debajo de un tamaño de umbral y calcular sus atributos para que sean los mismos que los del polígono original, o copiarlos / pegarlos en la ventana Atributo del editor.
Las entidades con atributos en blanco por encima del tamaño del umbral deben eliminarse.
A partir de ahí, la herramienta Disolver debería completar el trabajo.
La solución de PolyGeo es una que yo mismo he empleado y funciona bien (+1). Otra alternativa es almacenar en búfer los polígonos en una pequeña cantidad y luego eliminar el búfer del resultado en la misma cantidad (digamos + 1 my luego -1 m). Esto también funciona bien, pero conlleva un pequeño riesgo de unir accidentalmente polígonos vecinos en la misma cantidad que su búfer. También puede aumentar el recuento de vértices (lo que puede ser un problema o no).
También puede escribir un script para una solución robusta iterando sobre cada polígono, creando polígonos temporales basados en los anillos interiores y probándolos para sus áreas. Si están por debajo de su umbral, elimine ese anillo interior de la geometría y actualice su fila. Esta solución es más trabajo que la solución de PolyGeo o mi truco de búfer anterior, pero es posiblemente un enfoque “más puro”.
Puede usar la herramienta “Eliminar parte poligonal” (Herramientas de administración de datos -> Generalización) en ArcToolbox. Puede especificar el área / porcentaje de agujero mínimo para eliminar.