Entidades de ajuste de bordes (Edición)

Resumen

Modifica las entidades de línea de entrada mediante el ajuste espacial de sus formas, guiada por los vínculos de ajuste de bordes especificados, de modo que se conecten con las líneas en el dataset adyacente.

Más información acerca ajuste de bordes

Ilustración

Entidades de ajuste de bordes

Uso

Sintaxis

EdgematchFeatures_edit (in_features, in_link_features, {method}, {adjacent_features}, {border_features})
ParámetroExplicaciónTipo de datos
in_features

Entidades de línea de entrada que se deben ajustar.

Feature Layer
in_link_features

Entidades de línea de entrada que representan vínculos de ajuste de bordes.

Feature Layer
method
(Opcional)

Método de ajuste de bordes que se utiliza para ajustar solo las entidades de entrada o tanto las entidades de entrada como las entidades adyacentes a las nuevas ubicaciones de conexión.

  • MOVE_ENDPOINTMueve el extremo de una línea a la nueva ubicación de conexión. Esta es la opción predeterminada.
  • ADD_SEGMENTAñade un segmento recto al final de una línea para que finalice en la nueva ubicación de conexión.
  • ADJUST_VERTICESAjusta el extremo de una línea a la nueva ubicación de conexión. Los vértices restantes también se ajustan de modo que sus cambios posicionales se reduzcan gradualmente hacia el extremo opuesto de la línea.
String
adjacent_features
(Opcional)

Entidades de línea que son adyacentes a las entidades de entrada. Si se especifican, tanto las entidades de entrada como las adyacentes se ajustan para contactar en las nuevas ubicaciones de conexión, ya sea en los puntos intermedios de los vínculos de ajuste de bordes o en las ubicaciones más cercanas a los puntos intermedios de los vínculos en las entidades de límite (si se especifican). Si proporciona ambas entidades, debe proporcionar entidades adyacentes.

Feature Layer
border_features
(Opcional)

Entidades de línea o poligonales que representan los límites entre las entidades de entrada y adyacentes. Si especifica las entidades de límite, también debe especificar las entidades adyacentes. Tanto las entidades de entrada como las entidades adyacentes se ajustan para contactar en las nuevas ubicaciones de conexión más cercanas a los puntos intermedios de los vínculos en las entidades de límite.

Feature Layer

Ejemplo de código

Ejemplo 1 de EdgematchFeatures (ventana de Python)

La siguiente secuencia de comandos de la ventana de Python muestra cómo se utiliza la función EdgematchFeatures en el modo inmediato.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.EdgematchFeatures_edit("cityA_Roads.shp", "em_Links.shp"
                             "MOVE_ENDPOINT")
Ejemplo 2 de EdgematchFeatures (secuencia de comandos de Python independiente)

La siguiente secuencia de comandos de Python independiente es un ejemplo de cómo se aplica la función EdgematchFeatures en un entorno de secuencias de comandos.

# Name:        EdgematchFeatures_example_script2.py
# Description: Performs edgematching spatial adjustment using links produced by
#              GenerateEdgematchLinks. The links go from input features to adjacent 
#              features. The links are then checked for intersecting conditions, which
#              might not be desired; they are finally used to adjust input features 
#              (a copy is made) to connect with the matched adjacent feautures.
# Author:      Esri
# -----------------------------------------------------------------------

# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.overwriteOutput = True
env.workspace = r"D:\conflationTools\ScriptExamples\data.gdb"

# Set local variables
inFeatures = "roads1"
adjFeatures = "roads2"
gelOutput = "gelinks_out"

search_distance = "200 Feet"
match_fields = "NAME ROAD_NAME"

qaLocations = "qa_locations"

# Generate rubbersheet links
arcpy.GenerateEdgematchLinks_edit(inFeatures, adjFeatures, gelOutput, search_distance, match_fields)

# ====================================================================================
# Note 1:  The result of GenerateEdgematchLinks may contain errors; see tool reference.
#          Inspection and editing may be necessary to ensure correct links before using
#          them for edgematching.
#
#          One of the possible errors are undesired intersecting or touching links.  
#          Their locations can be found by the process below.
# ====================================================================================

# Find locations where links intersect or touch; the result contains coincident points
arcpy.Intersect_analysis(gelOutput, qaLocations, "", "", "POINT")

# Delete coincident points
arcpy.DeleteIdentical_management(qaLocations, "Shape")

# ====================================================================================
# Note 2:  At this point you can manually inspect locations in qaLocations; delete or
#          modify links as needed.
# ====================================================================================

# Make a copy of the inFeatures for edgematching
inFeature_Copy = inFeatures + "_Copy"
arcpy.CopyFeatures_management(inFeatures, inFeature_Copy)

# Use the links to adjust the copy of the input features
arcpy.EdgematchFeatures_edit(inFeature_Copy, gelOutput, "MOVE_ENDPOINT")

Entornos

Temas relacionados

5/9/2014