Zusammenfassung
Kombiniert Polygone innerhalb einer bestimmten Entfernung zueinander zu neuen Polygonen.
Abbildung
Verwendung
Dieses Werkzeug ist für kleinere Maßstabsreduzierungen und Aggregationen gedacht, wenn Eingabe-Features aufgrund einer eingeschränkten Kartengröße oder der erforderlichen Auflösung nicht mehr einzeln dargestellt werden können. Die Aggregation findet nur statt, wenn zwei Polygongrenzen innerhalb der angegebenen Aggregationsentfernung liegen. Es findet keine Selbstaggregation statt. Dies bedeutet, dass keine Aggregation innerhalb eines Eingabe-Polygon-Features entlang seiner Umrandung oder zwischen Teilen eines mehrteiligen Polygon-Features erfolgt.
Bei Verwendung der orthogonalen Option werden rechtwinklig geformte Ausgabe-Features erzeugt. Diese Option eignet sich am besten für die Verwendung mit Eingabe-Features, die vorwiegend rechwinklige Kanten aufweisen. In einigen Fällen tritt eine geringere Aggregation auf, um diese Funktion auszuführen. Zwei quadratische Gebäude z. B., die sich innerhalb der Aggregationsentfernung diagonal voneinander entfernt befinden, werden unter Umständen nicht aggregiert, da unter Beibehaltung der Rechtwinkligkeit keine klare Verbindung hergestellt werden kann. Bei Verwendung der nicht-orthogonalen Option werden eher organische Formen erzeugt.
Verwenden Sie Barrieren-Features, um Aggregation über Grenzen hinweg zu verhindern. Beispiele dafür sind das Verhindern der Aggregation der Landnutzung über Flüsse hinweg oder von Gebäuden über Straßen hinweg. Barrieren können entweder Linien oder Polygone sein, und mehrere Barrieren-Feature-Classes können gleichzeitig verwendet werden.
Die Ausgabe-Feature-Class enthält keine geographischen Attribute der Eingabe-Features. Optional kann eine Eins-zu-Viele-Beziehungstabelle erstellt werden, um die aggregierten Polygone mit ihren Quell-Polygonen zu verknüpfen. Dieser Link stimmt ggf. nicht mehr, wenn Eingabe- oder Ausgabe-Features geändert werden.
Wenn die Eingabe-Features Z-Werte enthalten, können diese Z-Werte beibehalten werden, sofern dies in den Umgebungseinstellungen angegeben ist. Werden die Ausgabestützpunkte nicht geändert, werden die Eingabe-Z-Werte in die Ausgabestützpunkte übernommen. Andernfalls werden die Z-Werte für neue Stützpunkte von vorhandenen Z-Werten oder durch Interpolation abgeleitet.
Bei Verarbeitung eines großen Eingabe-Datasets werden möglicherweise Speicherbeschränkungen überschritten. Erwägen Sie in diesem Fall, die Eingabedaten partitionsweise zu verarbeiten, indem Sie eine relevante Polygon-Feature-Class in der Umgebungseinstellung Kartografische Partitionen angeben. Die Teile der Daten, die durch Partitionsgrenzen definiert werden, werden sequenziell verarbeitet. Wenn die resultierende Ausgabe-Feature-Class an den Partitionsrändern konsistent ist, aber Ausgabe-Features Partitionen schneiden, wird sie an der Partitionslinie geteilt. Ein Feld mit dem Namen IS_SPLIT in der Ausgabe-Feature-Class verfügt dann über den Wert 1.
Syntax
AggregatePolygons(in_features, out_feature_class, aggregation_distance, {minimum_area}, {minimum_hole_size}, {orthogonality_option}, {barrier_features}, {out_table})
Parameter | Erklärung | Datentyp |
in_features | Zu aggregierende Polygon-Features. Wenn dieser Layer auf eine Repräsentation verweist und Shape-Overrides für die Eingabe-Features vorhanden sind, werden die überschriebenen Shapes, nicht die Feature-Shapes, bei der Aggregationsverarbeitung berücksichtigt. | Feature Layer |
out_feature_class | Die zu erstellende Ausgabe-Feature-Class. | Feature Class |
aggregation_distance | Die Entfernung, die erforderlich ist, damit zwischen Polygongrenzen Aggregation erfolgen kann. Die Entfernung muss angegeben und größer als null sein. Sie können eine bevorzugte Einheit auswählen. Standardmäßig wird die Feature-Einheit verwendet. | Linear Unit |
minimum_area (optional) | Die Mindestfläche für ein beizubehaltendes aggregiertes Polygon. Der Standardwert ist 0, das heißt, alle Polygone müssen beibehalten werden. Sie können eine bevorzugte Einheit angeben. Standardmäßig wird die Feature-Einheit verwendet. | Areal Unit |
minimum_hole_size (optional) | Die Mindestgröße eines beizubehaltenden Polygonloches. Der Standardwert ist 0, das heißt, alle Polygonlöcher müssen beibehalten werden. Sie können eine bevorzugte Einheit angeben. Standardmäßig wird die Feature-Einheit verwendet. | Areal Unit |
orthogonality_option (optional) | Legt die Merkmale der Ausgabe-Features für die Erstellung der aggregierten Grenzen fest.
| Boolean |
barrier_features [barrier_features,...] (optional) | Die Layer mit den Linien- oder Polygon-Features, die Aggregationsbarrieren für Eingabe-Features darstellen. Features werden nicht über Barrieren-Features hinweg aggregiert. Barrieren-Features, die in geometrischem Konflikt mit Eingabe-Features stehen, werden ignoriert. | Feature Layer |
out_table (optional) | Eine Eins-zu-Viele-Beziehungstabelle, die die aggregierten Polygone mit ihren Quell-Polygon-Features verknüpft. Diese Tabelle enthält zwei Felder (OUTPUT_FID und INPUT_FID), in denen die aggregierten Feature-IDs und ihre dazugehörigen Quell-Feature-IDs gespeichert sind. Leiten Sie mithilfe dieser Tabelle notwendige Attribute für die Ausgabe-Features von ihren Quell-Features ab. Der Standardname für diese Tabelle ist der Name der Ausgabe-Feature-Class, dem "_tbl" angehängt wurde. Der Standardpfad entspricht der Ausgabe-Feature-Class. Keine Tabelle wird erstellt, wenn dieser Parameter leer gelassen wird. | Table |
Codebeispiel
Das folgende Skript für das Python-Fenster veranschaulicht, wie das Werkzeug AggregatePolygons im unmittelbaren Modus verwendet wird.
import arcpy
arcpy.env.cartographicPartitions = "C:/data/county.gdb/zipcodepoly"
buildings = "C:/data/county.gdb/bldgspoly"
roads = "C:/data/county.gdb/roadnetwork"
output = "C:/data/county.gdb/BldgAggBarrierPartition"
output_table = "C:/data/county.gdb/BldgAggBarrierPartition_Tbl"
arcpy.AggregatePolygons_cartography(buildings, output, "20 Meters", "5 SquareMeters", "0 SquareMeters", "ORTHOGONAL", roads, output_table)
Das folgende eigenständige Skript veranschaulicht, wie die Funktion AggregatePolygons verwendet wird.
# Name: AggregatePolygons_Example2.py
# Description: Aggregate grass features and then transfer attributes
# Import system modules
import arcpy
import arcpy.cartography as CA
import arcpy.management as DM
import arcpy.analysis as AN
# Set environment settings
arcpy.env.workspace = "C:/data/Portland.gdb/Vegetation"
# Set local variables
inGrassFeatures = "grass"
aggregatedFeatures = "C:/data/PortlandOutput.gdb/grassland"
aggregatedTable = "C:/data/PortlandOutput.gdb/grassland_Tbl"
frequencyTable = "C:/data/PortlandOutput.gdb/frequency_Tbl"
# Aggregate grass polygons.
CA.AggregatePolygons(inGrassFeatures, aggregatedFeatures, 50, 300, 300, "NON_ORTHOGONAL", "", aggregatedTable)
# Join the aggregatedTable with input and
# transfer the COUNT field to aggregatedTable.
DM.JoinField(aggregatedTable, "INPUT_FID", inGrassFeatures, "OBJECTID", "COUNT")
# Use Frequency on aggregatedTable and
# obtain sum for COUNT.
AN.Frequency(aggregatedTable, frequencyTable, "OUTPUT_FID", "COUNT")
# Join the aggregatedFeatures with frequencyTable
# and transfer the COUNT field to aggregatedFeatures.
DM.JoinField(aggregatedFeatures, "OBJECTID", frequencyTable, "OUTPUT_FID", "COUNT")
Umgebungen
Lizenzinformationen
- Basic: Nein
- Standard: Nein
- Advanced: Ja