Resumen
Genera un informe de problemas de geometría en una clase de entidad.
Los formatos de entrada válidos son las clases de entidad y shapefile almacenadas en una geodatabase personal o geodatabase de archivos. Las geodatabases SDE verifican automáticamente la validez de cada geometría al cargarlas; por lo tanto, las herramientas Verificar geometría y Reparar geometría no son para utilizar con SDE.
Para obtener información adicional sobre problemas de geometría, su impacto en el software y las posibles causas, consulte Verificar y reparar geometrías.
Uso
La Tabla de salida tendrá un registro para cada problema de geometría que se descubra. Si no se encuentran problemas, la tabla estará vacía.
La Tabla de salida tiene los siguientes campos:
- CLASS: ruta completa y nombre de la clase de entidad en la que se encontró el problema.
- FEATURE_ID: Id. de entidad (FID) o Id. de objeto (OID) de la entidad con el problema de geometría.
- PROBLEM: breve descripción del problema.
El campo PROBLEM no de los siguientes:
- Short segment: algunos segmentos son más cortos de lo permitido por las unidades del sistema de la referencia espacial asociada con la geometría.
- Null geometry: la entidad no tiene geometría o no hay nada en el campo SHAPE.
- Incorrect ring ordering: el polígono es topológicamente simple, pero sus anillos pueden no estar orientados de la manera correcta (los anillos exteriores en sentido de las agujas del reloj; los anillos interiores en sentido contrario a las agujas del reloj).
- Incorrect segment orientation: los segmentos individuales no están orientados de manera consistente. El punto hasta del segmento i debe ser incidente en el punto desde del segmento i+1.
- Self intersections: un polígono no debe intersecar consigo mismo.
- Unclosed rings: el último segmento en un anillo debe tener su incidente del punto hasta en el punto desde del primer segmento.
- Empty parts: la geometría tiene varias partes y una de ellas está vacía (no tiene geometría).
- Duplicate vertex: la geometría tiene dos o más vértices con coordenadas idénticas.
- Mismatched attributes: la coordenada Z o M de un extremo del segmento de línea no coincide con la coordenada Z o M del extremo coincidente en el siguiente segmento.
- Discontinuous parts: una de las partes de la geometría se formó con partes desconectadas o discontinuas.
- Empty Z values: la geometría tiene uno o más vértices con un valor Z vacío (por ejemplo, NaN).
- Bad envelope : el contorno no coincide con la extensión coordinada de la geometría.
- Bad dataset extent: la extensión del dataset no contiene todas las entidades.
El problema identificado por esta herramienta se puede solucionar de las siguientes formas:
- Editar y reparar manualmente la entidad con problemas de geometría. Algunos de los problemas no pueden repararse mediante edición.
- Ejecutar la herramienta Reparar Geometría en las clases de entidad en las que se ha identificado que hay problemas de geometría.
En las entidades de punto, solo es posible el problema de geometría nula.
Para facilitar la revisión de las entidades de las que se informó que tenían problemas de geometría, puede unir las Entidades de entrada a la Tabla de salida utilizando la herramienta Agregar unión, junto con el campo OBJECTID o FID de la entrada y el campo FEATURE_ID de la tabla de salida.
Sintaxis
CheckGeometry_management (in_features, out_table)
Parámetro | Explicación | Tipo de datos |
in_features [in_feature,...] | Una o más clases de entidad o capas de entidad para encontrar problemas de geometría. Las entradas válidas son las clases de entidad y shapefiles almacenados en una geodatabase personal o en una geodatabase de archivos. | Feature Layer |
out_table | La tabla de salida que contiene los problemas de geometría descubiertos en las entidades de entrada. | Table |
Ejemplo de código
Ejemplo 1 de CheckGeometry (ventana de Python)
La siguiente secuencia de comandos de la ventana de Python demuestra cómo utilizar la función CheckGeometry en el modo inmediato.
import arcpy
arcpy.env.workspace = "c:/data/data.gdb"
arcpy.CheckGeometry_management (["contours", "roads", "vegetation"], "CheckGeom_Result")
Ejemplo 2 de CheckGeometry (secuencia de comandos independiente)
La siguiente secuencia de comandos independiente utiliza la función CheckGeometry creando un bucle en todas las clases de entidad de una geodatabase.
# BatchCheckGeometry.py
# Description:
# Loops through all the feature classes in a geodatabase, and generates
# a report of the problems encountered with feature geometry.
# Import modules
import arcpy
# The workspace in which the feature classes will be checked
arcpy.env.workspace = "C:/data/St_Lucia.gdb"
outTable = "checkGeometryResult"
# A variable that will hold the list of all the feature classes
# inside the geodatabase
fcs = []
# List all feature classes in feature datasets
for fds in arcpy.ListDatasets("featuredataset"):
fcs += arcpy.ListFeatureClasses("*", "", fds)
# List all standalone feature classes
fcs = arcpy.ListFeatureClasses()
print("Running the check geometry tool on {} feature classes".format(len(fcs)))
arcpy.CheckGeometry_management(fcs, outTable)
print("{} geometry problems found, see {} for details.".format(arcpy.GetCount_management(outTable)[0],
outTable))
Entornos
Información sobre licencias
- ArcGIS for Desktop Basic: Sí
- ArcGIS for Desktop Standard: Sí
- ArcGIS for Desktop Advanced: Sí