Créer les axes médians (Cartographie)
Récapitulatif
Dérive des axes médians à partir de lignes doubles, telles que les tracés de route, à partir de certaines tolérances de largeur.
Illustration
Utilisation
-
Cet outil est prévu pour les paires de lignes presque parallèles régulières, telles que les bordures de route à grande échelle. Les axes médians sont créés uniquement entre des lignes ouvertes à leur extrémité et non à l'intérieur de lignes fermées qui sont des blocs de rue probables. L'outil n'est pas conçu pour simplifier les autoroutes à plusieurs voies avec échangeurs, sorties, passages supérieurs et passages inférieurs ou les voies ferrées avec plusieurs voies qui se rejoignent. Utilisez pour cela l'outil Fusionner des chaussées séparées.
-
Cet outil ne peut pas être exécuté dans une session de mise à jour.
-
La classe d'entités en sortie ne conservera pas les attributs géographiques des lignes en entrée, mais elle comporte les trois nouveaux champs suivants :
- LnType – Contient les valeurs de type de ligne suivantes :
- Valeur 1 pour les axes médians dérivés
- Valeur 2 pour les contours autour d'intersections relativement compliquées où les axes médians ne sont pas générés, les lignes qui représentent des routes avec une largeur dépassant la limite spécifiée et les lignes rompues ou non couplées.
- Valeur 3 pour les lignes avec des bordures source non claires (elles connectent en général deux intersections proches qui peuvent appartenir en réalité à une grande intersection).
- LeftLn_FID – Déplace l'ID d'objet de la ligne en entrée à gauche d'un axe médian dérivé. Cette valeur de champ sera nulle pour les lignes de type 2 et 3.
- RightLn_FID – Déplace l'ID d'objet de la ligne en entrée à droite d'un axe médian dérivé. Cette valeur de champ sera nulle pour les lignes de type 2 et 3.
Vous pouvez utiliser les valeurs LnType pour inspecter davantage les intersections non résolues et les routes plus larges. Vous pouvez également utiliser les champs LeftLn_FID et RightLn_FID avec l'outil Joindre un champ pour transférer le cas échéant les attributs des lignes source aux axes médians.
- LnType – Contient les valeurs de type de ligne suivantes :
Syntaxe
Paramètre | Explication | Type de données |
in_features |
Entités linéaires doubles en entrée, comme les bordures de route, à partir desquelles les axes médians sont dérivés. | Feature Layer |
out_feature_class |
Classe d'entités en sortie à créer. | Feature Class |
maximum_width |
Définit la largeur maximale des entités linéaires doubles pour dériver l'axe médian. Une valeur supérieure à zéro doit être spécifiée. Vous pouvez choisir une unité préférée. Par défaut, l'unité de l'entité est spécifiée. | Linear unit |
minimum_width (Facultatif) |
Définit la largeur minimale des entités linéaires doubles pour dériver l'axe médian. La largeur minimale doit être supérieure ou égale à 0 et inférieure à la largeur maximale. La valeur par défaut est zéro. Vous pouvez spécifier une unité préférée. Par défaut, l'unité de l'entité est spécifiée. | Linear unit |
Exemple de code
Le script de fenêtre Python suivant illustre l'utilisation de l'outil CollapseDualLinesToCenterline en mode immédiat.
import arcpy
from arcpy import env
import arcpy.cartography as CA
env.workspace = "C:/data"
CA.CollapseDualLinesToCenterline("dual_line_roads.shp", "C:/output/output.gdb/road_centerlines", 50)
Le script Python autonome ci-dessous illustre l'utilisation de l'outil CollapseDualLinesToCenterline.
# Name: CollapseDualLinesToCenterline_Example2.py
# Description: Create road centerlines and find buildings within a given distance
# Author: ESRI
# Import system modules
import arcpy
from arcpy import env
import arcpy.cartography as CA
import arcpy.management as DM
import arcpy.analysis as AN
# Set environment settings
env.workspace = "C:/data/Portland.gdb"
# Set local variables
inRoadCasingsFeatures = "road_casings"
inHouseFeatures = "houses"
centerlineFeatures = "C:/data/PortlandOutput.gdb/road_centerlines"
bufferFeatures = "C:/data/PortlandOutput.gdb/road_buffers"
# Create centerlines for road casings.
CA.CollapseDualLinesToCenterline(inRoadCasingsFeatures, centerlineFeatures, 80)
# Create buffers 100 units from around centerlines.
AN.Buffer(centerlineFeatures, bufferFeatures, 100)
# Select houses by buffers.
DM.SelectLayerByLocation(inHouseFeatures, "intersect", bufferFeatures, 100)