ArcGIS for Desktop

  • Documentation
  • Tarification
  • Support

  • My Profile
  • Aide
  • Sign Out
ArcGIS for Desktop

ArcGIS Online

La plateforme cartographique de votre organisation

ArcGIS for Desktop

Un SIG professionnel complet

ArcGIS for Server

SIG dans votre entreprise

ArcGIS for Developers

Outils de création d'applications de localisation

ArcGIS Solutions

Modèles d'applications et de cartes gratuits pour votre secteur d'activité

ArcGIS Marketplace

Téléchargez des applications et des données pour votre organisation.

  • Documentation
  • Tarification
  • Support
Esri
  • Se connecter
user
  • Mon profil
  • Déconnexion

Aide

  • Accueil
  • Commencer
  • Carte
  • Analyser
  • Gérer les données
  • Outils
  • Plus...

Polygone vers ligne

  • Récapitulatif
  • Illustration
  • Utilisation
  • Syntaxe
  • Exemple de code
  • Environnements
  • Informations de licence

Récapitulatif

Crée une classe d'entités contenant des lignes converties de limites de polygone en tenant compte ou non des polygones voisins.

Illustration

Illustration de l'outil Polygone vers ligne

Utilisation

  • Si la case Identifier et enregistrer les informations de voisinage du polygone est cochée (l'option neighbor_option est paramétrée sur IDENTIFY_NEIGHBORS dans l'écriture de script), la relation avec le polygone voisin est analysée. Comme illustré ci-dessus, les limites sont converties en lignes en tenant compte des segments mitoyens ou en intersection ; deux nouveaux champs, LEFT_FID et RIGHT_FID, seront ajoutés à la classe d'entités en sortie et définis sur les identifiants des entités des polygones en entrée à gauche et à droite de chaque ligne en sortie. Les attributs des entités en entrée ne seront pas conservés dans la classe d'entités en sortie. Les scénarios suivants vous aident à comprendre plus en détail le processus et la sortie :

    • Dans une géométrie de polygone, la limite externe est toujours stockée dans le sens des aiguilles d'une montre. Si le polygone a un trou, la limite du trou (ou intérieure) est toujours stockée dans le sens inverse des aiguilles d'une montre. Par conséquent, pour un polygone sans voisins du côté gauche (à l'extérieur) de sa limite externe et du côté gauche (à l'intérieur) de la limite du trou, les lignes résultantes auront une valeur de -1 pour LEFT_FID et l'identifiant d'entité surfacique comme RIGHT_FID.
    • Si un polygone contient un autre polygone, une ligne en sortie dans le sens des aiguilles d'une montre sera générée afin de représenter la limite partagée, LEFT_FID étant défini sur l'identifiant d'entité surfacique extérieure et RIGHT_FID sur l'identifiant d'entité surfacique intérieure.
    • Si deux polygones partagent une portion de leurs limites, une ligne en sortie sera générée afin de représenter le segment mitoyen. La direction de la ligne sera arbitraire et LEFT_FID et RIGHT_FID seront définis en conséquence sur les identifiants d'entité surfacique gauche ou droit.
    • Si un polygone se superpose à un autre polygone, deux lignes en sortie seront générées afin de représenter deux fois chaque limite en intersection. La première ligne représentera la limite extérieure de l'un des polygones superposés ; son LEFT_FID sera donc l'identifiant d'entité du polygone qu'il croise et son RIGHT_FID son propre identifiant d'entité surfacique. La deuxième ligne ira dans la direction opposée, fractionnant l'autre polygone ; son LEFT_FID et son RIGHT_FID seront donc identiques à l'autre identifiant d'entité surfacique.
    • Dans les polygones en entrée, les multi-parties ne sont pas gérées. Les lignes en sortie sont toutes en une seule partie.

  • Si la case Identifier et enregistrer les informations de voisinage du polygone n'est pas cochée (l'option neighbor_option est paramétrée sur IGNORE_NEIGHBORS dans l'écriture de script), la relation avec le polygone voisin est ignorée. Chaque limite de polygone en entrée sera écrite comme entité linéaire délimitée. Un polygone multi-parties deviendra une ligne multi-parties dans la sortie. Les attributs des entités en entrée seront conservés dans la classe d'entités points en sortie. Un nouveau champ, ORIG_FID, sera ajouté à la sortie et défini sur les identifiants d'entité en entrée de chaque ligne.

  • Pour les entités en entrée qui sont des courbes paramétriques (vrai), les lignes en sortie resteront de vraies courbes même si elles sont fractionnées. Cela ne s'applique pas aux données des fichiers de formes.

  • Cet outil utilise un processus de tuilage pour la gestion des jeux de données très volumineux afin d'améliorer les performances et l'évolutivité. Pour plus de détails, reportez-vous à la rubrique Géotraitement sur jeux de données volumineux.

Syntaxe

PolygonToLine_management (in_features, out_feature_class, {neighbor_option})
ParamètreExplicationType de données
in_features

Entités en entrée qui doivent être des polygones.

Feature Layer
out_feature_class

Classe d’entités linéaires en sortie.

Feature Class
neighbor_option
(Facultatif)

Indique s'il faut ou non identifier et stocker les données du polygone voisin.

  • IDENTIFY_NEIGHBORS —La relation avec le polygone voisin est identifiée et stockée dans la sortie. Si différents segments de la limite d'un polygone sont mitoyens avec d'autres polygones, la limite sera fractionnée de sorte que chaque segment mitoyen unique devienne une ligne dont les identifiants des entités surfaciques voisines seront stockées dans la sortie. Il s'agit de l'option par défaut.
  • IGNORE_NEIGHBORS —La relation avec le polygone voisin est ignorée ; chaque limite de polygone deviendra une entité linéaire et son identifiant d'entité surfacique original sera stocké dans la sortie.
Boolean

Exemple de code

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

Le script de fenêtre Python suivant montre comment utiliser la fonction PolygonToLine en mode immédiat.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.PolygonToLine_management("Habitat_Analysis.gdb/vegtype", 
                               "C:/output/Output.gdb/vegtype_lines",
                               "IGNORE_NEIGHBORS")
Exemple 2 d'utilisation de l'outil PolygonToLine (script autonome)

Le script autonome suivant dessous est un exemple d'application simple de la fonction PolygonToLine dans un environnement de scripts.

# Name: PolygonToLine_Example2.py
# Description: Use PolygonToLine function to convert polygons to lines,
#              and report how many shared or overlapping boundary lines
#              were found.

# import system modules 
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data/landcovers.gdb"
 
# Create variables for the input and output feature classes
inFeatureClass = "bldgs"
outFeatureClass = "bldgs_lines"
 
# Use error trapping in case a problem occurs when running the tool
try:
    # Run PolygonToLine to convert polygons to lines using default neighbor_option
    arcpy.PolygonToLine_management(inFeatureClass, outFeatureClass)
 
    # Select lines that have LEFT_FID values greater than -1
    arcpy.MakeFeatureLayer_management(outFeatureClass, "selection_lyr", 
                                      "\"LEFT_FID\" > -1")
    result = arcpy.GetCount_management("selection_lyr")

    if (result.getOutput(0) == "0"):
        print("No overlapping or shared boundary lines were found.")
    else:
        print(result.getOutput(0) + " overlapping or shared boundary lines were found.")
 
except Exception as err:
    print(err.args[0])

Environnements

  • Espace de travail courant
  • Espace de travail temporaire
  • Valeur Z en sortie par défaut
  • Résolution M
  • Tolérance M
  • Domaine M en sortie
  • Domaine Z en sortie
  • Système de coordonnées en sortie
  • Etendue
  • Valeurs M en sortie
  • Valeurs Z en sortie
  • Grille spatiale 1 en sortie 
  • Grille spatiale 2 en sortie 
  • Grille spatiale 3 en sortie
  • Résolution XY
  • Tolérance XY
  • Résolution Z
  • Tolérance Z

Informations de licence

  • ArcGIS for Desktop Basic: Annuler
  • ArcGIS for Desktop Standard: Annuler
  • ArcGIS for Desktop Advanced: Oui

Thèmes connexes

  • Vue d'ensemble du jeu d'outils Entités
Vous avez un commentaire à formuler concernant cette rubrique ?

ArcGIS for Desktop

  • Accueil
  • Documentation
  • Tarification
  • Support

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS for Desktop
  • ArcGIS for Server
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

A propos d'Esri

  • A propos de la société
  • Carrières
  • Blog des initiés
  • Conférence des utilisateurs
  • Sommet des développeurs
Esri
© Copyright 2016 Environmental Systems Research Institute, Inc. | Confidentialité | Légal