ArcGIS Desktop

  • Documentación
  • Soporte

  • 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 for 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 sobre licencias

Resumen

Inspecciona cada entidad de una clase de entidad para ver si existen problemas de geometría. Cuando descubre un problema de geometría, se aplica la solución adecuada y se imprime una descripción de una línea que identifica la entidad y el problema.

Las entradas válidas son los shapefiles y las clases de entidad de geodatabase de archivos o personal.

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

Uso

    Precaución:

    Esta herramienta modifica los datos de entrada. Vea Herramientas sin salidas para ver más información y estrategias para evitar cambios de datos no deseados.

  • Esta herramienta utiliza la misma lógica que la herramienta Verificar geometría para evaluar los problemas de la geometría de la entidad.

  • A continuación se detalla una lista de problemas de geometría y el arreglo correspondiente que aplicará la herramienta:

    • Null geometry: se eliminará el registro de la clase de entidad. Para guardar los registros con geometría nula, desactive Eliminar entidades con geometría nula (utilice la opción KEEP_NULL del parámetro delete_null de Python).
    • Short segment: se eliminará el segmento corto de la geometría.
    • Incorrect ring ordering: se actualizará la geometría para que tenga un ordenamiento de anillo correcto.
    • Incorrect segment orientation: se actualizará la geometría para que tenga la orientación de segmento correcta.
    • Self intersections: se disolverán las áreas de superposición de 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án las coordenadas Z o M para que concuerden.
    • 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 contorno de la entidad para que sea correcto.
  • Después de aplicar una de las reparaciones enumeradas anteriormente, la herramienta volverá a evaluar la geometría resultante y, si encuentra otro problema, aplicará la solución correspondiente. Por ejemplo, el resultado de arreglar una geometría con el problema Incorrect ring ordering puede producir una geometría con el problema Null geometry.

  • En Reparar geometría no hay ninguna solución para el problema bad dataset extent. Para resolver este problema, ejecute la herramienta Agregar índice espacial en el dataset.

  • Las geodatabases de SDE 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 y Reparar geometría con las clases de entidad de SDE.

Sintaxis

RepairGeometry_management (in_features, {delete_null})
ParámetroExplicaciónTipo de datos
in_features

Capa o clase de entidad que será reparada. Los shapefiles y las clases de entidad de geodatabase de archivos y personal son entidades de entrada válidas.

Feature Layer
delete_null
(Opcional)

Especifica la acción que se deberá llevar a cabo cuando existan geometrías nulas.

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

Muestra de código

Ejemplo 1 de RepairGeometry (ventana de Python)

La siguiente secuencia de comandos de la ventana de Python muestra cómo utilizar la función RepairGeometry en el modo inmediato.

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

La siguiente secuencia de comandos independiente es un ejemplo de cómo aplicar la función RepairGeometry en las secuencias de comandos.

# 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 sobre licencias

  • ArcGIS Desktop Basic: Sí
  • ArcGIS Desktop Standard: Sí
  • ArcGIS Desktop Advanced: Sí

Temas relacionados

  • Vista general del conjunto de herramientas Entidades
  • Verificar y reparar geometrías

ArcGIS Desktop

  • Inicio
  • Documentación
  • Soporte

Plataforma ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Acerca de Esri

  • Quiénes somos
  • Empleo
  • Blog interno
  • Conferencia de usuarios
  • Cumbre de desarrolladores
Esri
Díganos su opinión.
© Copyright 2016 Environmental Systems Research Institute, Inc. | Privacidad | Legal