Simplifier des lignes (Cartographie)

Niveau de licence :BasicStandardAdvanced

Récapitulatif

Simplifie les lignes en supprimant les courbes superflues tout en conservant leur forme globale.

Pour en savoir plus sur la manière de simplifier les lignes

Illustration

Illustration de l'outil Simplifier des lignes

Utilisation

Syntaxe

SimplifyLine_cartography (in_features, out_feature_class, algorithm, tolerance, {error_resolving_option}, {collapsed_point_option}, {error_checking_option})
ParamètreExplicationType de données
in_features

Les entités lignes à simplifier.

Feature Layer
out_feature_class

La classe d'entités lignes en sortie à créer.

Feature Class
algorithm

Spécifie l'algorithme de simplification de lignes.

  • POINT_REMOVEConserve les points critiques qui décrivent la forme globale d'une ligne et supprime tous les autres points. Il s'agit de l'option par défaut.
  • BEND_SIMPLIFYConserve les courbes critiques dans une ligne et supprime les courbes superflues.
String
tolerance

La tolérance qui détermine le degré de simplification. Une tolérance 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.

  • Pour l'algorithme POINT_REMOVE, la tolérance que vous spécifiez correspond au décalage maximum autorisé de chaque sommet par rapport à son emplacement d'origine. Cette valeur peut être réduite localement dans certaines zones lorsque l'option est utilisée pour résoudre les erreurs topologiques.
  • Pour l'algorithme BEND_SIMPLIFY, la tolérance que vous spécifiez correspond à la longueur de la ligne de base de la courbe.
Linear unit
error_resolving_option
(Facultatif)

Précise la manière de traiter les erreurs topologiques (qui ont pu s'introduire au cours du processus, notamment les croisements de lignes, les superpositions de lignes et les lignes de longueur nulle éliminées). Ce paramètre entre en vigueur lorsque error_checking_option est positionné sur CHECK (par défaut).

  • FLAG_ERRORSLes erreurs topologiques seront signalées par des indicateurs, le cas échéant. Il s'agit de l'option par défaut.
  • RESOLVE_ERRORSIndique qu'il convient de résoudre les erreurs topologiques, le cas échéant.
Boolean
collapsed_point_option
(Facultatif)

Indique s'il convient, le cas échéant, de conserver ou non les lignes de longueur nulle éliminées comme des points. Ce paramètre ne s'applique que lorsque l'option NO_CHECK est spécifiée ou que sont sélectionnées les options FLAG_ERRORS et CHECK.

  • KEEP_COLLAPSED_POINTSIndique qu'il convient de conserver les lignes de longueur nulle réduites comme des points. Les extrémités des lignes éliminées sont stockées dans une classe d'entités ponctuelles à l'emplacement de la classe d'entités en sortie. Celle-ci est alors est désignée par le nom de la classe d'entités en sortie à laquelle on ajoute le suffixe _Pnt. Il s'agit de l'option par défaut.
  • NO_KEEPIndique qu'il convient de ne pas conserver les lignes de longueur nulle réduites comme des points si elles sont détectées. Par conséquent, la classe d'entités points est vide.
Boolean
error_checking_option
(Facultatif)

Précise la manière de traiter les erreurs topologiques (qui ont pu s'introduire au cours du processus, notamment les croisements de lignes, les superpositions de lignes et les lignes de longueur nulle éliminées).

  • CHECKIndique que les erreurs topologiques doivent être détectées et active le paramètre error_resolving_option. Il s'agit de l'option par défaut.
  • NO_CHECKIndique que les erreurs topologiques ne doivent pas être détectées et désactive le paramètre error_resolving_option.
Boolean

Exemple de code

Exemple d'utilisation de l'outil SimplifyLine (fenêtre Python)

Le script de fenêtre Python suivant montre comment utiliser l'outil SimplifyLine en mode immédiat.

import arcpy
from arcpy import env
import arcpy.cartography as CA
env.workspace = "C:/data"
CA.SimplifyLine("roads.shp", 
                "C:/output/output.gdb/simplified_roads", 
                "POINT_REMOVE", 
                20)
2e exemple d'utilisation de l'outil SimplifyLine (script autonome)

Le script autonome ci-dessous explique comment utiliser l'outil SimplifyLine.

# Name: SimplifyLine_Example2.py
# Description: Simplify line features from two feature classes, rivers and coastlines,
# while maintaining their connections

 
# Import system modules
import arcpy
from arcpy import env
import arcpy.management as DM
import arcpy.cartography as CA
 
# Set environment settings
env.workspace = "C:/data/Portland.gdb/Hydrography"
 
# Set local variables
inRiverFeatures = "rivers"
inCoastlineFeatures = "coastlines"

mergedFeatures = "C:/data/PortlandOutput.gdb/merged_lines"
simplifiedFeatures = "C:/data/PortlandOutput.gdb/merged_lines_simplified"
tempLayer = "tempLyr"

outRiverFeatureClass = "C:/data/PortlandOutput.gdb/rivers_final"
outCoastlineFeatureClass = "C:/data/PortlandOutput.gdb/coastlines_final"

# Merge rivers and coastlines into one feature class, 
# assuming that they have a common f-code field 
# with value 40 for rivers and 80 for coastlines.
DM.Merge(inRiverFeatures, inCoastlineFeatures, mergedFeatures)

# Simplify all lines.
CA.SimplifyLine(mergedFeatures, 
                simplifiedFeatures, 
                "BEND_SIMPLIFY", 
                100, 
                "RESOLVE_ERRORS", 
                "KEEP_COLLAPSED_POINTS", 
                "CHECK")
 
# Select rivers and coastlines by their f-code values 
# and put them in separate feature classes.
DM.MakeFeatureLayer(simplifiedFeatures, tempLayer, "f-code = 40")
DM.CopyFeatures(tempLayer, outRiverFeatureClass)

DM.MakeFeatureLayer(simplifiedFeatures, tempLayer, "f-code = 80")
DM.CopyFeatures(tempLayer, outCoastlineFeatureClass)

Environnements

Thèmes connexes

Informations de licence

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