Ajuster les bords des entités (Mise à jour)

Niveau de licence :BasicStandardAdvanced

Récapitulatif

Modifie les entités linéaires en entrée en ajustant spatialement leurs formes, guidé par les liens d'ajustement des bords spécifiés, afin qu'elles soient connectées avec les lignes du jeu de données adjacent.

En savoir plus sur l'ajustement des bords

Illustration

Ajuster les bords des entités

Utilisation

Syntaxe

EdgematchFeatures_edit (in_features, in_link_features, {method}, {adjacent_features}, {border_features})
ParamètreExplicationType de données
in_features

Entités linéaires en entrée à ajuster.

Feature Layer
in_link_features

Entités linéaires en entrée représentant les liens d'ajustement des bords.

Feature Layer
method
(Facultatif)

Méthode d'ajustement des bords à utiliser pour ajuster soit uniquement les entités en entrée, soit à la fois les entités en entrée et les entités adjacentes, aux nouveaux emplacements de connexion.

  • MOVE_ENDPOINTDéplace l'extrémité d'une ligne vers le nouvel emplacement de connexion. Il s'agit de l'option par défaut.
  • ADD_SEGMENTAjoute un segment droit à l'extrémité d'une ligne pour qu'elle prenne fin au nouvel emplacement de connexion.
  • ADJUST_VERTICESAjuste l'extrémité d'une ligne avec le nouvel emplacement de connexion. Les sommets restants sont également ajustés de manière à ce que leurs changements de position soient progressivement réduits vers l'extrémité opposée de la ligne.
String
adjacent_features
(Facultatif)

Entités linéaires qui sont adjacentes aux entités en entrée. Si elles sont spécifiées, les entités en entrée et les entités adjacentes sont ajustées de manière à se rejoindre à leurs nouveaux emplacements, soit les points du milieu des liens d'ajustement des bords, soit les emplacements les plus proches des points du milieu des liens sur les entités limites (si elles sont spécifiées). Vous devez fournir des entités adjacentes si vous fournissez des entités limites.

Feature Layer
border_features
(Facultatif)

Entités linéaires ou surfaciques représentant des limites entre les entités en entrée et les entités adjacentes. Lorsque vous spécifiez les entités limites, vous devez également spécifier les entités adjacentes. Les entités en entrée et les entités adjacentes sont ajustées de manière à se rejoindre aux nouveaux emplacements de connexion les plus proches des points du milieu des liens sur les entités limites.

Feature Layer

Exemple de code

Exemple 1 d'utilisation de l'outil Ajuster les bords des entités (fenêtre Python)

Le script de fenêtre Python suivant illustre l'utilisation de l'outil Ajuster les bords des entités en mode immédiat.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.EdgematchFeatures_edit("cityA_Roads.shp", "em_Links.shp"
                             "MOVE_ENDPOINT")
Exemple 2 d'utilisation de l'outil Ajuster les bords des entités (script Python autonome)

Le script Python autonome suivant est un exemple d'application de la fonction Ajuster les bords des entités dans un environnement de scripts.

# 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")

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