Générer des liens d'étirement caoutchouté (Mise à jour)

Niveau de licence :BasicStandardAdvanced

Récapitulatif

Détecte l'endroit où les entités linéaires source correspondent spatialement aux entités linéaires cible et génère des lignes représentant les liens entre des emplacements source et des emplacements cible correspondant pour l'étirement caoutchouté.

Illustration

Générer des liens d'étirement caoutchouté

Utilisation

Syntaxe

GenerateRubbersheetLinks_edit (source_features, target_features, out_feature_class, search_distance, {match_fields}, {out_match_table})
ParamètreExplicationType de données
source_features

Entités linéaires en tant qu'entités source pour la génération de liens d'étirement caoutchouté. Tous les liens débutent aux entités source.

Feature Layer
target_features

Entités linéaires en tant qu'entités cible pour la génération de liens d'étirement caoutchouté. Tous les liens prennent fin aux entités cible.

Feature Layer
out_feature_class

Classe d'entités en sortie contenant les lignes représentant des liens d'étirement caoutchouté.

Feature Class
search_distance

Distance utilisée pour rechercher des candidats d'appariement. La distance doit être indiquée et elle doit être supérieure à zéro. Vous pouvez choisir une unité préférée. Par défaut, l'unité de l'entité est spécifiée.

Linear unit
match_fields
[[source_field, target_field],...]
(Facultatif)

Liste des champs des entités source et cible. Si elle est renseignée, des candidats à l'appariement sont recherchés dans chaque paire de champs, afin de déterminer la correspondance adéquate.

Value Table
out_match_table
(Facultatif)

Table en sortie contenant des informations d'appariement d'entités complètes.

Table

Exemple de code

Exemple 1 d'utilisation de l'outil Générer des liens d'étirement caoutchouté (fenêtre Python)

Le script de fenêtre Python ci-dessous illustre l'utilisation de la fonction Générer des liens d'étirement caoutchouté en mode immédiat.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.GenerateRubbersheetLinks_edit("source_Roads.shp", "target_Roads.shp", 
                                    "rubbersheet_Links.shp", "25 Feet")
Exemple 2 d'utilisation de l'outil Générer des liens d'étirement caoutchouté (script Python autonome)

Le script autonome suivant dessous est un exemple d'application de la fonction Générer des liens d'étirement caoutchouté dans un environnement 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 finally used to adjust the
#              base roads (a copy is made) to better align with the updated roads.
# 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
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.GenerateRubbersheetLinks_edit(sourceFeatures, targetFeatures, grlOutput, search_distance, match_fields)

# ====================================================================================
# Note 1:  The result of GenerateRubbersheetLinks may contain errors; see tool reference.
#          Inspection and editing may be necessary to ensure correct links before using
#          them for rubbersheeting.
#
#          One of the common errors are 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(grlOutput, 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 sourceFeatures for rubbersheeting
arcpy.CopyFeatures_management(sourceFeatures, "sourceFeatures_Copy")


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

Environnements

Thèmes connexes

Informations de licence

ArcGIS for Desktop Basic: Annuler
ArcGIS for Desktop Standard: Annuler
ArcGIS for Desktop Advanced: Oui
6/5/2014