ArcGIS Desktop

  • Dokumentation
  • Support

  • My Profile
  • Hilfe
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Die Mapping-Plattform für Ihre Organisation

ArcGIS Desktop

Ein vollständiges professionelles GIS

ArcGIS Enterprise

GIS in Ihrem Unternehmen

ArcGIS for Developers

Werkzeuge zum Erstellen standortbezogener Apps

ArcGIS Solutions

Kostenlose Karten- und App-Vorlagen für Ihre Branche

ArcGIS Marketplace

Rufen Sie Apps und Daten für Ihre Organisation ab.

  • Dokumentation
  • Support
Esri
  • Anmelden
user
  • Eigenes Profil
  • Abmelden

ArcMap

  • Startseite
  • Erste Schritte
  • Karte
  • Analysieren
  • Verwalten von Daten
  • Werkzeuge
  • Erweiterungen

Polygon in Linie

  • Zusammenfassung
  • Abbildung
  • Verwendung
  • Syntax
  • Codebeispiel
  • Umgebungen
  • Lizenzinformationen

Zusammenfassung

Erstellt eine Feature-Class, die Linien enthält, die aus Polygongrenzen mit oder ohne Berücksichtigung benachbarter Polygone umgewandelt wurden.

Abbildung

Abbildung "Polygon in Linie"

Verwendung

  • Wenn das Kontrollkästchen, Informationen zu benachbarten Polygonen identifizieren und speichern aktiviert ist (neighbor_option bei Skripterstellung auf "IDENTIFY_NEIGHBORS" festgelegt), wird die Beziehung zu benachbarten Polygonen analysiert. Wie oben illustriert werden die Grenzen unter Berücksichtigung sich kreuzender oder gemeinsamer Segmente in Linien umgewandelt. Die Ausgabe-Feature-Class wird mit zwei neuen Feldern ("LEFT_FID" und "RIGHT_FID") ergänzt und auf die Feature-IDs der Eingabepolygone links und rechts der einzelnen Ausgabelinien gesetzt. Die Attribute der Eingabe-Features werden in der Ausgabe-Feature-Class nicht beibehalten. Folgende Szenarien sollen den Vorgang und die Ausgabe weitergehend illustrieren:

    • In einer Polygongeometrie wird die äußere Grenze immer im Uhrzeigersinn gespeichert. Wenn das Polygon ein Loch hat, wird die Lochgrenze (innere Grenze) immer gegen den Uhrzeigersinn gespeichert. Bei einem Polygon ohne Nachbarn auf der linken Seite der Außengrenze und der linken Seite der Lochgrenze weisen die entstehenden Linien daher im Feld "LEFT_FID" den Wert "-1" und im Feld "RIGHT_FID" die Polygon-Feature-ID auf.
    • Enthält ein Polygon ein anderes Polygon, wird eine Ausgabelinie im Uhrzeigersinn als gemeinsame Grenze erstellt. Das zugehörige Feld "LEFT_FID" enthält dann die Feature-ID des äußeren Polygons und das Feld "RIGHT_FID" die Feature-ID des inneren Polygons.
    • Teilen sich zwei Polygone einen Teil ihrer Grenzen, wird als gemeinsames Segment eine Ausgabelinie gebildet. Die Linienrichtung ist beliebig; "LEFT_FID" und "RIGHT_FID" werden entsprechend auf die Feature-ID des linken oder rechten Polygons festgelegt.
    • Überlappt ein Polygon ein anderes, werden zwei Ausgabelinien erstellt. Diese stellen jede sich kreuzende Grenze zweimal dar: die erste Linie entspricht der äußeren Grenze einer der beiden Polygone. "LEFT_FID" ist daher die Feature-ID des Polygons, die sie schneidet. "RIGHT_FID" ist die eigene Polygon-Feature-ID. Die zweite Linie verläuft in der entgegengesetzten Richtung und teilt das andere Polygon. Daher sind "LEFT_FID" und "RIGHT_FID" mit der Feature-ID des anderen Polygons identisch.
    • Multiparts in Eingabepolygonen werden nicht beibehalten; die Ausgabelinien sind alle Singlepart.

  • Wenn das Kontrollkästchen, Informationen zu benachbarten Polygonen identifizieren und speichern deaktiviert ist (neighbor_option bei Skripterstellung auf "IGNORE_NEIGHBORS" festgelegt), wird die Beziehung zu benachbarten Polygonen nicht berücksichtigt. Jede Eingabepolygongrenze wird als eingeschlossenes Linien-Feature ausgegeben. Ein Multipart-Polygon wird als Multipart-Linie ausgegeben. Die Attribute der Eingabe-Features werden in der Ausgabe-Feature-Class beibehalten. Das Feld "ORIG_FID" wird der Ausgabe-Feature-Class hinzugefügt und auf die IDs der einzelnen Eingabe-Features gesetzt.

  • Für parametrische (echte) Kurven-Eingabe-Features bleiben die Ausgabelinien auch bei Teilung echte Kurven. Dies gilt nicht für Shapefile-Daten.

  • Dieses Werkzeug verwendet einen Kachelvorgang, um beim Verarbeiten sehr großer Datasets eine bessere Performance und Skalierbarkeit zu erzielen. Weitere Informationen finden Sie unter Geoverarbeitung mit großen Datasets.

Syntax

PolygonToLine_management (in_features, out_feature_class, {neighbor_option})
ParameterErläuterungDatentyp
in_features

Die Eingabe-Features müssen Polygone sein.

Feature Layer
out_feature_class

Die Ausgabe-Line-Feature-Class

Feature Class
neighbor_option
(optional)

Gibt an, ob Informationen zu benachbarten Polygonen identifiziert und gespeichert werden sollen.

  • IDENTIFY_NEIGHBORS —Informationen zu benachbarten Polygonen werden identifiziert und in der Ausgabe gespeichert. Wenn verschiedene Segmente eines Polygons ihre Grenze mit anderen Polygonen teilen, wird die Grenze so geteilt, dass jedes eindeutig gemeinsame Segment zu einer Linie wird. Die FIDs der beiden benachbarten Polygone werden in der Ausgabe gespeichert. Dies ist die Standardeinstellung.
  • IGNORE_NEIGHBORS —Informationen zu benachbarten Polygonen werden ignoriert. Jede Polygongrenze wird zu einem Linien-Feature; die ursprüngliche Polygon-Feature-ID wird in der Ausgabe gespeichert.
Boolean

Codebeispiel

PolygonToLine - Beispiel 1 (Python-Fenster)

Das folgende Skript im Python-Fenster veranschaulicht, wie die Funktion "PolygonToLine" im unmittelbaren Modus verwendet wird.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.PolygonToLine_management("Habitat_Analysis.gdb/vegtype", 
                               "C:/output/Output.gdb/vegtype_lines",
                               "IGNORE_NEIGHBORS")
PolygonToLine - Beispiel 2 (eigenständiges Skript)

Das folgende eigenständige Skript ist ein einfaches Beispiel für die Anwendung der Funktion "PolygonToLine" in einer Scripting-Umgebung.

# 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])

Umgebungen

  • Aktueller Workspace
  • Scratch-Workspace
  • Standard-Ausgabe-Z-Wert
  • M-Auflösung
  • M-Toleranz
  • Ausgabe-M-Domäne
  • Ausgabe-Z-Domäne
  • Ausgabe-Koordinatensystem
  • Ausdehnung
  • Ausgabe hat M-Werte
  • Ausgabe hat Z-Werte
  • Räumliches Gitter 1 der Ausgabe
  • Räumliches Gitter 2 der Ausgabe
  • Räumliches Gitter 3 der Ausgabe
  • XY-Auflösung
  • XY-Toleranz
  • Z-Auflösung
  • Z-Toleranz

Lizenzinformationen

  • ArcGIS Desktop Basic: Nein
  • ArcGIS Desktop Standard: Nein
  • ArcGIS Desktop Advanced: Ja

Verwandte Themen

  • Überblick über das Toolset "Features"

ArcGIS Desktop

  • Startseite
  • Dokumentation
  • Support

ArcGIS Plattform

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

Über Esri

  • Über uns
  • Karriere
  • Insider-Blog
  • User Conference
  • Developer Summit
Esri
Wir sind an Ihrer Meinung interessiert.
© Copyright 2016 Environmental Systems Research Institute, Inc. | Datenschutz | Rechtliches