Polygone vers ligne (Gestion des données)

Niveau de licence :BasicStandardAdvanced

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

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_NEIGHBORSLa 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_NEIGHBORSLa 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
from arcpy import env
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.
# Author: ESRI

# import system modules 
import arcpy
from arcpy import env

# Set environment settings
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, e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    print "Line %i" % tb.tb_lineno
    print e.message

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