Eliminar parte de polígono (Administración de datos)

Disponible con una licencia Advanced.

Resumen

Crea una nueva clase de entidad de salida que contiene las entidades de los polígonos de entrada con algunas partes o agujeros de un tamaño especificado que se eliminó.

Ilustración

Ilustración de Eliminar parte de polígono

Uso

  • Ya que los agujeros en polígonos se consideran partes del polígono, se pueden eliminar o rellenar con esta herramienta. Si el área del agujero es más pequeña que el tamaño especificado, el agujero se eliminará y el espacio se rellenará en la salida. Cualquier parte que esté dentro del agujero eliminado también se eliminará en la salida.

  • El tamaño de la parte se puede especificar como un área, un porcentaje o una combinación de los dos. Utilice el parámetro Condición para determinar cómo se especificará el tamaño de la parte. Las opciones AREA_AND_PERCENT y AREA_OR_PERCENT del parámetro Condición se utilizan para eliminar partes con los criterios de área y porcentaje.

  • El porcentaje de la parte del polígono se calcula como un porcentaje del área exterior total de la entidad, incluida el área de cualquier agujero. Por ejemplo, si un polígono con un agujero tiene un área de 75 metros cuadrados, y el agujero cubre 25 metros cuadrados, el área exterior total de los polígonos es de 100 metros cuadrados. Para eliminar este agujero, se debería especificar un área con más de 25 metros cuadrados o un porcentaje mayor que el 25%. Si la entrada es un polígono multiparte, el área exterior de una entidad es la suma del área cubierta por todas las partes del polígono.

  • Para los polígonos multiparte, el área de cada parte se comparará con el área especificada. Si la parte de un polígono individual es más pequeña que el tamaño especificado, la parte se eliminará en la salida.

  • Si todas las partes de una entidad poligonal son más pequeñas que el tamaño especificado, la parte más grande se mantendrá en la salida, mientras que las demás partes se eliminarán.

Sintaxis

arcpy.management.EliminatePolygonPart(in_features, out_feature_class, {condition}, {part_area}, {part_area_percent}, {part_option})
ParámetroExplicaciónTipo de datos
in_features

La capa o clase de entidad de entrada cuyas entidades se copiarán en la clase de entidad de salida, con algunas partes o agujeros eliminados.

Feature Layer
out_feature_class

La clase de entidad poligonal de salida que contiene las partes restantes.

Feature Class
condition
(Opcional)

Especifique cuántas partes a eliminar se determinarán.

  • AREASe eliminarán las partes con un área más pequeña que la especificada.
  • PERCENTSe eliminarán las partes con un porcentaje del área exterior total menor que el especificado.
  • AREA_AND_PERCENTSe eliminarán las partes con un área y porcentaje menor que los especificados. Solo se eliminará si la parte de un polígono cumple con los criterios de área y porcentaje.
  • AREA_OR_PERCENTSe eliminarán las partes con un área o porcentaje menor que el especificado. Si la parte de un polígono cumple con los criterios de área y porcentaje, se eliminará.
String
part_area
(Opcional)

Eliminar partes más pequeñas que esta área.

Areal Unit
part_area_percent
(Opcional)

Eliminar partes más pequeñas que este porcentaje del área exterior total de una entidad.

Double
part_option
(Opcional)

Determina qué partes se pueden eliminar.

  • CONTAINED_ONLYSolo se pueden eliminar las partes totalmente contenidas por otras partes. Esta es la opción predeterminada.
  • ANYSe puede eliminar cualquier parte.
Boolean

Muestra de código

Ejemplo de EliminatePolygonPart (ventana de Python)

La siguiente secuencia de comandos de la ventana de Python muestra cómo utilizar la herramienta Eliminar parte de polígono.

import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.EliminatePolygonPart_management("buildings.shp", "output.gdb/remaining_buildings", "AREA", 10)
Ejemplo 2 de EliminatePolygonPart (secuencia de comandos independiente)

La siguiente secuencia de comandos de Python independiente muestra cómo utilizar la herramienta Eliminar parte de polígono.

# Name: EliminatePolygonPart_Example2.py
# Description: Eliminate small islands before simplifying and smoothing lake boundaries
 
# Import system modules
import arcpy
from arcpy import env
 
# Set environment settings
env.workspace = "C:/data/Portland.gdb/Hydrography"
 
# Set local variables
inLakeFeatures = "lakes"
eliminatedFeatures = "lakes_eliminated"
simplifiedFeatures = "lakes_simplified"
smoothedFeatures = "lakes_smoothed"

# Eliminate small islands in lake polygons.
arcpy.EliminatePolygonPart_management(inLakeFeatures, eliminatedFeatures, "AREA", 100, "", "CONTAINED_ONLY")
 
# Simplify lake polygons.
arcpy.SimplifyPolygon_cartography(eliminatedFeatures, simplifiedFeatures, "POINT_REMOVE", 50, 200, "RESOLVE_ERRORS", "KEEP_COLLAPSED_POINTS")
 
# Smooth lake polygons.
arcpy.SmoothPolygon_cartography(simplifiedFeatures, smoothedFeatures, "BEZIER_INTERPOLATION")

Información de licenciamiento

  • Basic: No
  • Standard: No
  • Advanced: Sí

Temas relacionados