Masques de Cul-De-Sac (Cartographie)

Résumé

Crée une classe d'entités de masques de polygones à partir d'une couche de lignes symbolisées en entrée.

Utilisation

  • Cet outil crée uniquement des masques aux extrémités de lignes non connectées (également nommées culs-de-sac). Une extrémité de ligne est considérée comme connectée si elle partage son extrémité avec celle d'une autre ligne. Cet outil accepte uniquement les couches linéaires en entrée.

  • Cet outil est conçu pour fournir des masques d'extrémités de lignes pour les cas où des lignes ont été symbolisées à l'aide d'une terminaison de ligne arrondie afin de faciliter la transition des connexions linéaires. Au lieu d'attribuer un arrondi à l'extrémité des lignes, vous pouvez les masquer à l'aide de la classe d'entités surfaciques créée avec cet outil.

  • En règle générale, les marges sont supérieures à 0. Une taille de marge nulle crée des masques qui représentent la forme exacte des entités symbolisées.

  • Si la couche linéaire en entrée contient des géométries linéaires multi-parties, des masques cul-de-sac sont créés pour toutes les extrémités de lignes non connectées, notamment les extrémités des parties au sein des lignes multi-parties.

  • Lors de la création de masques, n'oubliez pas que le fait d'ajouter des masques aux cartes apporte un surcroît de complexité qui ralentit leur affichage et a une incidence sur leur impression et leur exportation. En général, trois points sont à prendre en compte lors de la création de masques pour une carte : le nombre de masques, la complexité des masques et l'utilisation des masques, à savoir s'ils doivent masquer des entités surfaciques remplies de symboles ponctuels ou linéaires. Une augmentation du nombre de masques, de leur complexité et un masquage par rapport à des symboles ponctuels ou de remplissage des polygones se traduit par un ralentissement du tracé à l'écran. En outre, les performances d'impression et d'exportation risquent d'être médiocres, voire d'échouer à produire une sortie valide. Ceci est dû au traitement extrêmement volumineux nécessaire pour imprimer et exporter des cartes avec des masques et aux limitations connues sur la manière dont les formats de fichiers graphiques stockent les résultats des exportations des cartes dotées d'un grand nombre de masques complexes.

  • Les valeurs de marge sont exprimées en unités de page ou en unités de carte. En général, il est préférable de spécifier la valeur de distance de la marge en unités de page.

    Les unités de la valeur de marge sont interprétées différemment selon les unités choisies. Si vous sélectionnez des points, des pouces, des millimètres ou des centimètres, les masques sont créés en utilisant la distance de marge telle que calculée dans l'espace de la page (la marge correspond à une distance mesurée sur le papier). La valeur de l'échelle de référence est prise en compte dans ce calcul.

    Si vous sélectionnez d'autres unités, les masques sont alors créés en utilisant la distance de marge telle que calculée dans l'espace cartographique (la marge correspond à une distance réelle mesurée sur la terre). Dans ce cas, la valeur de l'échelle de référence n'est pas prise en compte dans ce calcul.

Syntaxe

arcpy.cartography.CulDeSacMasks(input_layer, output_fc, reference_scale, spatial_reference, margin, {attributes})
ParamètreExplicationType de données
input_layer

Couche linéaire en entrée à partir de laquelle les masques sont créés.

Layer
output_fc

Classe d'entités contenant les entités masques.

Feature Class
reference_scale

Echelle de référence utilisée pour calculer la géométrie de masquage lorsque les masques sont spécifiés en unités de page. Il s'agit en général de l'échelle de référence de la carte.

Double
spatial_reference

Référence spatiale de la carte dans laquelle les polygones de masquage sont créés. Il ne s'agit pas de la référence spatiale attribuée à la classe d'entités en sortie. Il s'agit de la référence spatiale de la carte dans laquelle les polygones de masquage seront utilisés, étant donné que la position de la symbologie est susceptible de varier lorsque les entités sont projetées.

Spatial Reference
margin

Espace en unités de page entourant les entités symbolisées en entrée permettant de créer les polygones de masquage. En général, les polygones de masquage sont créés avec une petite marge autour du symbole afin d'améliorer l'apparence visuelle. Les valeurs de marge sont exprimées en unités de page ou en unités de carte. En général, il est préférable de spécifier la valeur de distance de la marge en unités de page.

La marge ne peut pas être négative.

Linear Unit
attributes
(Facultatif)

Détermine les attributs qui seront transférés à partir des entités en entrée vers les entités en sortie.

  • ONLY_FIDSeul le champ FID des entités en entrée est transféré vers les entités en sortie. Il s’agit de l’option par défaut.
  • NO_FIDTous les attributs, à l'exception du champ FID, issus des entités en entrée sont transférés vers les entités en sortie.
  • ALLTous les attributs issus des entités en entrée sont transférés vers les entités en sortie.
String

Exemple de code

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

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

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.CulDeSacMasks_cartography("C:/data/cartography.gdb/transportation/roads",
                                "C:/data/cartography.gdb/transportation/cds_polys",
                                "25000", "", "5 meters", "ALL")
Exemple 2 d'utilisation de l'outil CulDeSacMasks (script autonome)

Ce script autonome montre un exemple d'utilisation de l'outil CulDeSacMasks.

# Name: CulDeSacMasks_standalone_script.py
# Description: Creates masks at the unconnected ends of lines in the input layer. 
 
# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data"

# Set local variables
input_layer = "cartography.gdb/transportation/roads"
outpuf_fc = "cartography.gdb/transportation/cds_polys"
reference_scale = "25000"
spatial_reference = arcpy.Describe(input_layer).spatialReference
margin = "5 meters"
attributes = "ALL"

# Execute Cul De Sac Masks
arcpy.CulDeSacMasks_cartography(input_layer, output_fc, reference_scale, 
                                spatial_reference, margin, attributes)

Informations de licence

  • Basic: Non
  • Standard: Non
  • Advanced: Oui

Rubriques connexes