Polygonteil entfernen (Data Management)

Mit der Advanced-Lizenz verfügbar.

Zusammenfassung

Erstellt eine neue Ausgabe-Feature-Class mit den Features von Eingabepolygonen, wobei einige Teile oder Löcher einer bestimmten Größe gelöscht werden.

Abbildung

Abbildung "Polygonteil entfernen"

Verwendung

  • Da Polygonlöcher als Teile des Polygons gelten, können sie mit diesem Werkzeug gelöscht oder ausgefüllt werden. Wenn die Lochfläche kleiner als die angegebene Größe ist, wird das Loch aus der Ausgabe entfernt und der entsprechende Bereich gefüllt. Alle Teile, die sich im gelöschten Loch befinden, werden ebenfalls aus der Ausgabe entfernt.

  • Die Größe des Teils kann als Fläche, Prozentsatz oder Kombination von beiden angegeben werden. Verwenden Sie den Parameter Bedingung, um festzulegen, wie die Größe des Teils angegeben wird. Mit den Optionen AREA_AND_PERCENT und AREA_OR_PERCENT des Parameters "Bedingung" werden Teile anhand der Flächen- und Prozentangabe entfernt.

  • Der Prozentsatz des Polygonteils entspricht einem prozentualen Anteil an der gesamten äußeren Fläche des Features, einschließlich der Fläche von Löchern. Beispiel: Ein Polygon mit einem Loch weist eine Fläche von 75 Quadratmetern auf, wobei das Loch eine Fläche von 25 Quadratmetern einnimmt. In diesem Fall beträgt die gesamte äußere Fläche des Polygons 100 Quadratmeter. Um dieses Loch zu entfernen, muss eine Fläche von mehr als 25 Quadratmetern oder ein Prozentsatz größer 25 % angegeben werden. Wenn die Eingabe ein Multipart-Polygon ist, entspricht die äußere Fläche eines Features der Summe der von allen Polygonteilen bedeckten Fläche.

  • Bei Multipart-Polygonen wird die Fläche der einzelnen Teile mit der angegebenen Fläche verglichen. Wenn ein einzelner Polygonteil kleiner als die angegebene Größe ist, wird er aus der Ausgabe entfernt.

  • Wenn alle Teile eines Polygon-Features kleiner als die angegebene Größe sind, wird der größte Teil in der Ausgabe übernommen, alle anderen Teile werden entfernt.

Syntax

EliminatePolygonPart(in_features, out_feature_class, {condition}, {part_area}, {part_area_percent}, {part_option})
ParameterErklärungDatentyp
in_features

Die Eingabe-Feature-Class oder der Eingabe-Layer, deren oder dessen Features in die Ausgabe-Feature-Class kopiert werden, wobei einige Teile oder Löcher entfernt werden.

Feature Layer
out_feature_class

Die Ausgabe-Polygon-Feature-Class, die die verbleibenden Teile enthält.

Feature Class
condition
(optional)

Geben Sie an, wie die zu entfernenden Teile festgelegt werden.

  • AREATeile, deren Fläche kleiner als die angegebene Fläche ist, werden entfernt.
  • PERCENTTeile, deren Prozentsatz an der gesamten äußeren Fläche kleiner als der angegebene Prozentsatz ist, werden entfernt.
  • AREA_AND_PERCENTTeile, deren Fläche und Prozentsatz kleiner als die angegebene Fläche und der angegebene Prozentsatz sind, werden entfernt. Ein Polygonteil wird nur gelöscht, wenn sowohl sein Flächen- als auch sein Prozentwert unter den angegebenen Werten liegen.
  • AREA_OR_PERCENTTeile, deren Fläche oder Prozentsatz kleiner als die angegebene Fläche oder der angegebene Prozentsatz ist, werden entfernt. Wenn entweder der Flächen- oder der Prozentwert eines Polygons unter dem angegebenen Wert liegt, wird der Teil gelöscht.
String
part_area
(optional)

Teile, die kleiner als diese Fläche sind, werden entfernt.

Areal Unit
part_area_percent
(optional)

Teile, die kleiner als dieser Prozentsatz an der gesamten äußeren Feature-Fläche sind, werden entfernt.

Double
part_option
(optional)

Hiermit wird festgelegt, welche Teile entfernt werden können.

  • CONTAINED_ONLYNur Teile, die vollständig in anderen Teilen enthalten sind, können entfernt werden. Dies ist die Standardeinstellung.
  • ANYAlle Teile können entfernt werden.
Boolean

Codebeispiel

EliminatePolygonPart – Beispiel (Python-Fenster)

Im folgenden Skript im Python-Fenster wird veranschaulicht, wie das Werkzeug "Polygonteil entfernen" verwendet wird.

import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.EliminatePolygonPart_management("buildings.shp", "output.gdb/remaining_buildings", "AREA", 10)
EliminatePolygonPart – Beispiel 2 (eigenständiges Skript)

Das folgende eigenständige Python-Skript veranschaulicht, wie das Werkzeug "Polygonteil entfernen" verwendet wird.

# Name: EliminatePolygonPart_Example2.py
# Description: Eliminate small islands before simplifying and smoothing lake boundaries
 
# Import system modules
import arcpy
from arcpy import env
 
# Set environment settings
env.workspace = "C:/data/Portland.gdb/Hydrography"
 
# Set local variables
inLakeFeatures = "lakes"
eliminatedFeatures = "lakes_eliminated"
simplifiedFeatures = "lakes_simplified"
smoothedFeatures = "lakes_smoothed"

# Eliminate small islands in lake polygons.
arcpy.EliminatePolygonPart_management(inLakeFeatures, eliminatedFeatures, "AREA", 100, "", "CONTAINED_ONLY")
 
# Simplify lake polygons.
arcpy.SimplifyPolygon_cartography(eliminatedFeatures, simplifiedFeatures, "POINT_REMOVE", 50, 200, "RESOLVE_ERRORS", "KEEP_COLLAPSED_POINTS")
 
# Smooth lake polygons.
arcpy.SmoothPolygon_cartography(simplifiedFeatures, smoothedFeatures, "BEZIER_INTERPOLATION")

Lizenzinformationen

  • Basic: Nein
  • Standard: Nein
  • Advanced: Ja

Verwandte Themen