Generar vínculos de Rubbersheet (Edición)

Resumen

Busca el lugar donde las entidades de línea de origen coinciden espacialmente con las entidades de línea de destino y genera las líneas que representan los vínculos de las ubicaciones de origen con las ubicaciones de destino correspondientes para el estirado "rubber sheeting".

Ilustración

Ilustración de la herramienta Generar vínculos de Rubbersheet

Uso

  • Las entidades de línea de diferentes fuentes de datos y que cubren la misma área, por ejemplo, carreteras mantenidas por un gobierno municipal y carreteras de la misma ciudad de un proveedor comercial de datos, puede que no se alineen perfectamente debido a conjuntos de datos incoherentes u otros motivos. Las desviaciones espaciales entre las entidades correspondientes a menudo no son uniformes. Si es consciente de que los datos de un origen son menos precisos que los de otro, puede mejorar la precisión de los datos a través del ajuste de estirado "rubber sheeting" con esta herramienta para generar vínculos de Rubbersheet. A continuación, utilice la herramienta Entidades de Rubbersheet para realizar el ajuste. Para referirse a los dos conjuntos de entidades de líneas se utilizan los términos entidades de origen y entidades de destino (normalmente más precisos). Esta herramienta busca las líneas de origen y destino correspondientes dentro de una distancia de búsqueda especificada y genera los vínculos de estirado "rubber sheeting".

  • Nota:

    Todas las entradas deben estar en el mismo sistema de coordenadas.

  • La unión de las extensiones de entrada se utiliza como extensión de procesamiento. Los recuentos de las entidades de origen y destino que participan se notifican en los mensajes de procesamiento.

  • La clase de entidad de salida contiene líneas que representan vínculos de Rubbersheet normales para la entrada a la herramienta Entidades de Rubbersheet. Un enlace normal conecta una ubicación de origen a una ubicación de destino no idéntica pero coincidente.

    Puede visualizar estos vínculos en un mapa como con cualquier otra entidad de línea. Las líneas se pueden trazar con una flecha en cada extremo para generar un mapa parecido al de la ilustración de arriba.

  • Además de la clase de entidad de línea de salida, se crea una clase de entidad de puntos derivada que contiene los vínculos de identidad. Un vínculo de identidad conecta una ubicación de origen a una ubicación de destino idéntica y coincidente. Las ubicaciones con vínculos de identidad no se mueven en el estirado "rubber sheeting". Si no hay ubicaciones de origen idénticas y las ubicaciones de destino son coincidentes, no se generarán vínculos de identidad y la clase de entidad de puntos está vacía. Solo debe proporcionar la clase de entidad de puntos como la entrada a la herramienta Entidades de Rubbersheet cuando no está vacía. La clase de entidad de puntos de salida se encuentra en la misma ubicación que la clase de entidad de salida y tiene el mismo nombre que la clase de entidad de salida, pero con el sufijo _pnt. Por ejemplo, si la clase de entidad de salida tiene el nombre outputLinks, la clase de entidad de puntos de salida se llamará outputLinks_pnt.

  • Tanto la salida de vínculos de estirado "rubber sheeting" normales como la salida de vínculos de identidad tienen los siguientes campos:

    • SRC_FID: los Id. de entidades de origen en los puntos iniciales de los vínculos. El valor es -1 si la ubicación está compartida por más de una entidad de origen (por ejemplo, una intersección de carreteras).
    • TGT_FID: los Id. de entidades de destino en los puntos finales de los vínculos. El valor es -1 si la ubicación está compartida por más de una entidad de destino (por ejemplo, una intersección de carreteras)

  • El parámetro Distancia de búsqueda se utiliza para buscar candidatos que coinciden. Utilice una distancia que sea lo suficientemente grande para captar la mayoría de cambios entre las entidades correspondientes, pero no demasiado para generar el procesamiento innecesario de un exceso de candidatos y obtener potencialmente coincidencias erróneas.

  • La coincidencia de entidades se realiza analizando la topología de las líneas, los patrones y las características geométricas. Cuando las entidades coinciden espacialmente, los vínculos de Rubbersheet se generan desde las ubicaciones de origen a las ubicaciones de destino correspondientes. Para las entidades de origen que son curvas paramétricas (verdaderas), los vínculos se generan en ubicaciones densificadas a lo largo de las curvas.

  • Si especifica una o más parejas de campos para el parámetro Campos de coincidencia, los candidatos coincidentes espacialmente se comparan con estos valores de campo para ayudar a determinar la coincidencia correcta. Por ejemplo, supongamos que las entidades de origen y destino tienen ambas un campo STREET_NAME que contiene nombres de calles. Si una entidad de origen coincide espacialmente con dos entidades de destino, pero solo un candidato de destino tiene el mismo valor de campo STREET_NAME que la entidad de origen, se considera la mejor coincidencia. La comparación de cadenas de texto no distingue mayúsculas de minúsculas, por lo que Calle Mayor se considera igual que calle mayor.

  • El parámetro Tabla de concordancia de salida es opcional. Esta tabla de concordancia proporciona exhaustiva información de coincidencia de entidades, incluidos los FID de origen y destino, los grupos coincidentes, las relaciones coincidentes y el nivel de confianza de la correspondencia derivada de las condiciones coincidentes de espacio y atributo. Esta información puede servir para comprender las situaciones coincidentes y ayudar en la inspección posterior, la postedición y los análisis adicionales. Consulte Acerca de la geocodificación de entidades y la tabla de coincidencias para obtener información detallada.

  • La precisión de la coincidencia de entidades depende de la calidad de los datos, la complejidad y la similitud de las dos entradas.

    Minimice los errores de datos y seleccione las entidades relevantes. En general, es útil si las entradas de un dataset de entrada son topológicamente correctas, tienen una geometría válida y son de una sola parte y no están duplicadas; de lo contrario, pueden producirse resultados inesperados.

  • Se recomienda que revise los resultados y haga las correcciones necesarias. Durante la inspección posterior y la posedición, puede utilizar las herramientas de edición existentes para editar los vínculos, por ejemplo, para eliminar un vínculo, alterar un vínculo moviendo su vértice inicial o final, o agregar un nuevo vínculo. Actualice los valores de los campos SRC_FID y TGT_FID fsegún convenga.

Parámetros

EtiquetaExplicaciónTipo de datos
Entidades de origen

Entidades de línea que se utilizarán como entidades de origen para la generación de vínculos de Rubbersheet. Todos los vínculos empiezan en entidades de origen.

Feature Layer
Entidades de destino

Entidades de línea que se utilizarán como entidades de destino para la generación de vínculos de Rubbersheet. Todos los vínculos finalizan en entidades coincidentes.

Feature Layer
Clase de entidad de salida

Clase de entidad de salida que contiene líneas que representan vínculos de estirado "rubber sheeting" normales.

Feature Class
Distancia de búsqueda

La distancia que se utilizará para buscar candidatos que coinciden. Se debe especificar una distancia que debe ser mayor que cero. Puede elegir la unidad que prefiera. El valor predeterminado es la unidad de la entidad.

Linear Unit
Campos de coincidencia
(Opcional)

Listas de campos de entidades de origen y de destino. Si se proporciona, cada pareja de campos se comprueba para candidatos coincidentes con el fin de ayudar a determinar la concordancia adecuada.

Value Table
Tabla de concordancias de salida
(Opcional)

Tabla de salida que contiene información completa de coincidencia de entidades.

Table

Salida derivada

EtiquetaExplicaciónTipo de datos
Vínculos de identidad

Una clase de entidad que contiene vínculos de identidad.

Feature Class

arcpy.management.GenerateRubbersheetLinks(source_features, target_features, out_feature_class, search_distance, {match_fields}, {out_match_table})
NombreExplicaciónTipo de datos
source_features

Entidades de línea que se utilizarán como entidades de origen para la generación de vínculos de Rubbersheet. Todos los vínculos empiezan en entidades de origen.

Feature Layer
target_features

Entidades de línea que se utilizarán como entidades de destino para la generación de vínculos de Rubbersheet. Todos los vínculos finalizan en entidades coincidentes.

Feature Layer
out_feature_class

Clase de entidad de salida que contiene líneas que representan vínculos de estirado "rubber sheeting" normales.

Feature Class
search_distance

La distancia que se utilizará para buscar candidatos que coinciden. Se debe especificar una distancia que debe ser mayor que cero. Puede elegir la unidad que prefiera. El valor predeterminado es la unidad de la entidad.

Linear Unit
match_fields
[[source_field, target_field],...]
(Opcional)

Listas de campos de entidades de origen y de destino. Si se proporciona, cada pareja de campos se comprueba para candidatos coincidentes con el fin de ayudar a determinar la concordancia adecuada.

Value Table
out_match_table
(Opcional)

Tabla de salida que contiene información completa de coincidencia de entidades.

Table

Salida derivada

NombreExplicaciónTipo de datos
out_point_feature_class

Una clase de entidad que contiene vínculos de identidad.

Feature Class

Muestra de código

Ejemplo 1 de GenerateRubbersheetLinks (ventana Python)

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

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.edit.GenerateRubbersheetLinks("source_Roads.shp", "target_Roads.shp", 
                                    "rubbersheet_Links.shp", "25 Feet")
Ejemplo 2 de GenerateRubbersheetLinks (script independiente)

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

"""Name:        GenerateRubbersheetLinks_example_script2.py
Description: Generates links for rubbersheeting spatial adjustment. The links go
             from base road data to newly updated road data. The links are then
             analyzed for potential errors. They are then used to adjust the
             base roads (a copy is made) to better align with the updated roads.
"""

# Import system modules
import arcpy

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

# Set local variables
sourceFeatures = "baseRoads"
targetFeatures = "updateRoads"
grlOutput = "grlinks_out"
grlOutputPts = "grlinks_out_pnt"

search_distance = "300 Feet"
match_fields = "FULLNAME RD_NAME"

qaLocations = "qa_locations"

# Generate rubbersheet links
arcpy.edit.GenerateRubbersheetLinks(sourceFeatures, targetFeatures, grlOutput, search_distance, match_fields)

"""
Note 1:  The result of GenerateRubbersheetLinks may contain errors; see the tool reference.
         Inspection and editing may be necessary to ensure correct links before using
         them for rubbersheeting.

         One of the common errors is 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.analysis.Intersect(grlOutput, qaLocations, "", "", "POINT")

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

"""
Note 2:  You can manually inspect locations in qaLocations and delete or
         modify links as needed.
"""

# Make a copy of the sourceFeatures for rubbersheeting
arcpy.management.CopyFeatures(sourceFeatures, "sourceFeatures_Copy")


# Use the links for rubbersheeting
arcpy.edit.RubbersheetFeatures("sourceFeatures_Copy", grlOutput, grlOutputPts, "LINEAR")