Suavizar polígono (Cartografía)

Resumen

Suaviza ángulos cerrados en contornos de polígonos para mejorar la calidad estética o cartográfica.

Ilustración

Smooth Polygon illustration

Uso

Sintaxis

SmoothPolygon_cartography (in_features, out_feature_class, algorithm, tolerance, {endpoint_option}, {error_option})
ParámetroExplicaciónTipo de datos
in_features

Las entidades poligonales que se suavizarán.

Feature Layer
out_feature_class

La clase de entidad poligonal de salida que se creará.

Feature Class
algorithm

Especifica el algoritmo de suavizado.

  • PAEKAcrónimo de Polynomial Approximation with Exponential Kernel (Aproximación polinomial con núcleo exponencial). Calcula un polígono suavizado que no pasará a través de los vértices del polígono de entrada. Esta es la opción predeterminada.
  • BEZIER_INTERPOLATIONAjusta las curvas de Bézier entre los vértices. El polígono resultante pasa a través de los vértices del polígono de entrada. Este algoritmo no requiere una tolerancia. Las curvas de Bézier se aproximarán en una salida de shapefile.
String
tolerance

Establece una tolerancia utilizada por el algoritmo PAEK. Se debe especificar una tolerancia, la cual debe ser mayor que cero. Puede especificar la unidad que prefiera; el valor predeterminado es la unidad de la entidad. Debe introducir 0 como marcador de posición cuando utilice el algoritmo de suavizado BEZIER_INTERPOLATION.

Linear unit
endpoint_option
(Opcional)

Especifica si se preservarán los extremos para anillos de polígonos aislados. Esta opción funciona sólo con el algoritmo PAEK.

  • FIXED_ENDPOINTPreserva el extremo de un anillo de polígono aislado. Esta es la opción predeterminada.
  • NOT_FIXEDSuaviza el extremo de un anillo de polígono aislado.
Boolean
error_option
(Opcional)

Especifica cómo se manejarán los errores topológicos (posiblemente introducidos en el proceso, como el cruce o superposición de línea).

  • NO_CHECKEspecifica que no se buscarán errores topológicos. Esta es la opción predeterminada.
  • FLAG_ERRORSEspecifica que se marcarán los errores topológicos, si se encuentra alguno.
String

Ejemplo de código

Ejemplo de SmoothPolygon (ventana de Python)

La siguiente secuencia de comandos de la ventana de Python muestra cómo utilizar la herramienta SmoothPolygon en el modo inmediato.

import arcpy from arcpy import env import arcpy.cartography as CA env.workspace = "C:/data" CA.SmoothPolygon("soils.shp", "C:/output/output.gdb/smoothed_soils", "PAEK", 100)
Ejemplo 2 de SmoothPolygon (secuencia de comandos independiente)

La siguiente secuencia de comandos independiente muestra cómo utilizar la herramienta SmoothPolygon.

# Name: SmoothPolygon_Example2.py # Description: Eliminate small islands before simplifying and smoothing lake boundaries # Author: ESRI   # Import system modules import arcpy from arcpy import env import arcpy.cartography as CA import arcpy.management as DM   # Set environment settings env.workspace = "C:/data/Portland.gdb/Hydrography"   # Set local variables inLakeFeatures = "lakes" eliminatedFeatures = "C:/data/PortlandOutput.gdb/lakes_eliminated" simplifiedFeatures = "C:/data/PortlandOutput.gdb/lakes_simplified" smoothedFeatures = "C:/data/PortlandOutput.gdb/lakes_smoothed"  # Eliminate small islands in lake polygons. DM.EliminatePolygonPart(inLakeFeatures, eliminatedFeatures, 100, "OR", 0, "CONTAINED_ONLY")   # Simplify lake polygons. CA.SimplifyPolygon(eliminatedFeatures, simplifiedFeatures, "POINT_REMOVE", 50, 200, "RESOLVE_ERRORS", "KEEP_COLLAPSED_POINTS", "CHECK")   # Smooth lake polygons. CA.SmoothPolygon(simplifiedFeatures, smoothedFeatures, "PAEK", 100, "FLAG_ERRORS")   

Entornos

Temas relacionados

Información de licencia

ArcView: No
ArcEditor: Sí
ArcInfo: Sí

7/10/2012