ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Ayuda
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plataforma de representación cartográfica para tu organización

ArcGIS Desktop

Un completo SIG profesional

ArcGIS Enterprise

SIG en tu empresa

ArcGIS Developers

Herramientas para crear aplicaciones basadas en la ubicación

ArcGIS Solutions

Plantillas de aplicaciones y mapas gratuitas para tu sector

ArcGIS Marketplace

Obtén aplicaciones y datos para tu organización.

  • Documentación
  • Soporte
Esri
  • Iniciar sesión
user
  • Mi perfil
  • Cerrar sesión

ArcMap

  • Inicio
  • Introducción
  • Cartografiar
  • Analizar
  • Administrar datos
  • Herramientas
  • Extensiones

Reparar geometría

  • Resumen
  • Uso
  • Sintaxis
  • Muestra de código
  • Entornos
  • Información de licenciamiento

Resumen

Inspecciona cada entidad en una clase de entidad en busca de problemas de geometría. Si se detecta un problema, se repara y una descripción de una línea identificará la entidad, así como el problema de geometría que se ha reparado.

Esta herramienta utiliza la misma lógica que la herramienta Verificar geometría para reparar problemas de geometría.

Más información sobre la verificación y reparación de geometrías

Uso

    Precaución:

    Esta herramienta modifica los datos de entrada. Consulte Herramientas que no crean datasets de salida para obtener más información y estrategias para evitar cambios de datos no deseados.

  • La herramienta reparará los siguientes problemas de geometría:

    • Null geometry: se eliminará el registro de la clase de entidad. Para conservar los registros con geometría nula, desactive el parámetro Eliminar entidades con geometría nula (delete_null = "KEEP_NULL" en Python).
    • Short segment: se eliminará el segmento corto de la geometría.
    • Incorrect ring ordering: la geometría se actualizará con el orden correcto de los anillos.
    • Incorrect segment orientation: la geometría se actualizará con la orientación correcta de los segmentos.
    • Self intersections: se disolverán las áreas de superposición en un polígono.
    • Unclosed rings: se cerrarán los anillos abiertos conectando sus extremos.
    • Empty parts: se eliminarán las partes que son nulas o están vacías.
    • Duplicate vertex: se eliminará uno de los vértices.
    • Mismatched attributes: se actualizará la coordenada z o m para que coincida.
    • Discontinuous parts: se crearán varias partes a partir de la parte discontinua existente.
    • Empty Z values: el valor z se establecerá en 0.
    • Bad envelope: se actualizará el sobre de la entidad para que sea correcto.
  • Después de aplicar una reparación, la herramienta volverá a evaluar la geometría resultante y, si encuentra otro problema, aplicará la reparación correspondiente a ese problema. Por ejemplo, el resultado de reparar una geometría con el problema Incorrect ring ordering podría ser una geometría con el problema Null geometry.

  • El problema Bad dataset extent no se puede reparar con esta herramienta. Para resolver este problema, ejecute la herramienta Recalcular la extensión de clase de entidad en el dataset.

  • Las geodatabases corporativas verifican y reparan automáticamente las geometrías de entidades cuando las entidades se cargan en la base de datos, por lo que no es necesario utilizar las herramientas Verificar geometría ni Reparar geometría con las clases de entidad corporativa.

Sintaxis

arcpy.management.RepairGeometry(in_features, {delete_null})
ParámetroExplicaciónTipo de datos
in_features

Clase de entidad o capa que se desea procesar.

Feature Layer
delete_null
(Opcional)

Especifica si se eliminarán las entidades con geometrías nulas.

  • DELETE_NULL —Se eliminarán de la entrada las entidades con geometría nula. Esta es la opción predeterminada.
  • KEEP_NULL —No se eliminarán de la entrada las entidades con geometría nula.
Boolean

Salida derivada

NombreExplicaciónTipo de datos
out_feature_class

Las entidades de entrada actualizadas.

Feature Layer

Muestra de código

Ejemplo 1 de RepairGeometry (ventana de Python)

El siguiente script de la ventana de Python demuestra cómo utilizar la función RepairGeometry de modo inmediato.

import arcpy
arcpy.RepairGeometry_management("c:/data/sketchy.shp")
Ejemplo 2 de RepairGeometry (script independiente)

El siguiente script independiente es un simple ejemplo de cómo aplicar la función RepairGeometry en scripts.

# Description: 
#   Goes through the table generated by the Check Geometry tool and does 
#   the following
#   1) backs-up all features which will be 'fixed' to a "_bad_geom" feature class
#   2) runs repairGeometry on all feature classes listed in the table 

import arcpy
import os
 
# Table that was produced by Check Geometry tool
table = r"c:\temp\data.gdb\cg_sample1"
 
# Create local variables
fcs = []
 
# Loop through the table and get the list of fcs
for row in arcpy.da.SearchCursor(table, ("CLASS")):
    # Get the class (feature class) from the cursor
    if not row[0] in fcs:
        fcs.append(row[0])
 
# Now loop through the fcs list, backup the bad geometries into fc + "_bad_geom"
# then repair the fc
print("> Processing {0} feature classes".format(len(fcs)))
for fc in fcs:
    print("Processing " + fc)
    lyr = 'temporary_layer'
    if arcpy.Exists(lyr):
        arcpy.Delete_management(lyr)
    
    tv = "cg_table_view"
    if arcpy.Exists(tv):
        arcpy.Delete_management(tv)

    arcpy.MakeTableView_management(table, tv, ("\"CLASS\" = '%s'" % fc))
    arcpy.MakeFeatureLayer_management(fc, lyr)
    arcpy.AddJoin_management(lyr, arcpy.Describe(lyr).OIDFieldName, tv, "FEATURE_ID")
    arcpy.CopyFeatures_management(lyr, fc + "_bad_geom")
    arcpy.RemoveJoin_management(lyr, os.path.basename(table))
    arcpy.RepairGeometry_management(lyr)

Entornos

  • Espacio de trabajo actual
  • Extensión

Información de licenciamiento

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

Temas relacionados

  • Descripción general del conjunto de herramientas Entidades
  • Verificar y reparar geometrías

ArcGIS Desktop

  • Inicio
  • Documentación
  • Soporte

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Acerca de Esri

  • Quiénes somos
  • Empleo
  • Blog de Esri
  • Conferencia de usuarios
  • Cumbre de desarrolladores
Esri
Díganos su opinión.
Copyright © 2021 Esri. | Privacidad | Legal