Gebäude vereinfachen (Cartography)

Zusammenfassung

Mit diesem Werkzeug werden Grenzen oder Grundrisse von Gebäudepolygonen unter Beibehaltung der wesentlichen Form und Größe vereinfacht.

Abbildung

Abbildung "Gebäude vereinfachen"

Verwendung

  • Der Parameter Mindestfläche gilt nur für vereinfachte Gebäude. Jedes Gebäude, das nach Abschluss des Vereinfachungsprozesses kleiner ist als die Mindestfläche, wird aus der Ausgabe-Feature-Class entfernt.

  • Legen Sie im Parameter Eingabe-Barriere-Layer Features fest, die nicht von vereinfachten Gebäuden gekreuzt werden dürfen. Als Barrieren-Features können Punkte, Linien oder Polygone verwendet werden.

  • Verwenden Sie den Parameter Zusammengefasste Punkte beibehalten (collapsed_point_option in Python), um eine Ausgabe-Point-Feature-Class zum Speichern von Punkten zu erstellen, die Gebäude wiedergeben, die entfernt werden, weil sie kleiner als die Mindestfläche sind. Die Punktausgabe wird abgeleitet. Sie verwendet den gleichen Namen und die gleiche Position wie der Parameter Ausgabe-Feature-Class (out_feature_class in Python), jedoch mit einem _Pnt-Suffix. Die Ausgabe-Polygon-Feature-Class enthält alle Felder, die in der Eingabe-Feature-Class vorhanden sind. Die Ausgabe-Point-Feature-Class enthält keines dieser Felder.

  • Die Ausgabe-Feature-Class beinhaltet ein BLD_STATUS-Feld, in dem der Vereinfachungsstatus wie folgt angegeben wird:

    • 1: Ein einzelnes Gebäude wurde vereinfacht
    • 2: Ein einzelnes Gebäude wurde auf das kleinste umfassende Rechteck vereinfacht
    • 3: Ein Gebäude, das kleiner als die quadrierte Toleranz ist, wurde auf das kleinste umfassende Rechteck vereinfacht
    • 5: Ein Gebäude, das nicht vereinfacht wurde
    Ältere Versionen:

    In Versionen vor ArcGIS 10 steht BLD_STATUS = 4 für vereinfachte oder teilweise vereinfachte Gebäude, die mit geraden Linien verbunden sind. BLD_STATUS = 4 wird nicht mehr verwendet.

    Vorsicht:

    Wenn die Eingabe-Feature-Class ein BLD_STATUS-Feld enthält, ist es auch in der Ausgabe-Feature-Class vorhanden. Es wird außerdem mit neuen Werten gefüllt. Vorhandene Werte werden überschrieben. Um die vorhandenen Werte beizubehalten, erstellen Sie ein Feld in der Eingabe-Feature-Class, und kopieren Sie die vorhandenen Werte aus dem Feld BLD_STATUS in das neue Feld.

  • Wenn der Parameter Auf räumliche Konflikte überprüfen verwendet wird, werden räumliche Konflikte ermittelt. Das Werkzeug fügt der Ausgabe ein SimBldFlagFeld hinzu, um Konflikt-Flags zu speichern. Der Wert 0 bedeutet, dass kein Konflikt festgestellt wurde. Der Wert 1 weist auf einen Konflikt hin.

    Vorsicht:

    Wenn die Eingabe-Feature-Class ein SimBldFlag-Feld enthält, ist es auch in der Ausgabe-Feature-Class vorhanden. Es wird außerdem mit neuen Werten gefüllt. Vorhandene Werte werden auch dann überschrieben, wenn dieser Parameter deaktiviert ist (conflict_option = "NO_CHECK" in Python). Wenn keine Überprüfung auf räumliche Konflikte erfolgt, wird dieses vorhandene Feld mit NULL-Werten überschrieben. Um die vorhandenen Werte beizubehalten, erstellen Sie ein Feld in der Eingabe-Feature-Class, und kopieren Sie die vorhandenen Werte aus dem Feld SimBldFlag in das neue Feld.

  • Dieses Werkzeug kann nicht in Editiersitzungen ausgeführt werden.

  • Z-Eingabewerte können beibehalten werden, sofern dies in den Umgebungseinstellungen angegeben ist. Wenn Ausgabe-Stützpunkte lagegleich mit Eingabe-Feature-Stützpunkten sind, werden Z-Werte auf Ausgabe-Stützpunkte übertragen. Andernfalls werden Z-Werte entweder von vorhandenen Z-Werten oder durch Interpolation abgeleitet.

  • Während des Vereinfachungsvorgangs erstellte ungültige (sich selbst schneidende) Geometrie wird repariert, aber nicht verbessert. Wenn sich z. B. ein Polygon selbst schneidet, wird das Polygon zu einem Multipart-Polygon, sieht aber nach wie vor wie ein sich selbst schneidendes Polygon aus.

  • Domänen und Subtypes werden auch dann in die Ausgabe kopiert, wenn die Umgebungseinstellung Geodatabase-Feldeigenschaften übertragen deaktiviert ist.

  • Bei Verarbeitung von großen Datasets werden möglicherweise Speicherbeschränkungen überschritten. Erwägen Sie in solchen Fällen, 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. Die sich ergebende Feature-Class ist an den Partitionsrändern nahtlos und konsistent. Weitere Informationen erhalten Sie unter Generalisieren von großen Datasets mit Partitionen.

Syntax

arcpy.cartography.SimplifyBuilding(in_features, out_feature_class, simplification_tolerance, {minimum_area}, {conflict_option}, {in_barriers}, {collapsed_point_option})
ParameterErklärungDatentyp
in_features

Die zu vereinfachenden Gebäude-Polygone.

Feature Layer
out_feature_class

Die zu erstellende Ausgabe-Feature-Class.

Feature Class
simplification_tolerance

Die Toleranz für die Gebäudevereinfachung. Die Toleranz muss angegeben und größer als 0 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 vereinfachtes Gebäude, das in Feature-Einheiten beizubehalten ist. Der Standardwert ist 0, das heißt, alle Gebäude müssen beibehalten werden. Sie können eine bevorzugte Einheit angeben. Standardmäßig wird die Feature-Einheit verwendet.

Areal Unit
conflict_option
(optional)

Gibt an, ob eine Überprüfung hinsichtlich räumlicher Konflikte zwischen Gebäuden (Überlappung oder Berührung) erfolgen soll. Ein Feld mit dem Namen SimBldFlag wird der Ausgabe zum Speichern von Konflikt-Flags hinzugefügt. Der Wert 0 bedeutet, dass kein Konflikt festgestellt wurde. Der Wert 1 weist auf einen Konflikt hin.

  • NO_CHECKEine Überprüfung auf räumliche Konflikte findet nicht statt. Die erstellten Gebäude können einander überlappen. Dies ist die Standardeinstellung.
  • CHECK_CONFLICTSEine Überprüfung auf räumliche Konflikte wird durchgeführt. Die betreffenden Gebäude werden gekennzeichnet.
Boolean
in_barriers
[in_barriers,...]
(optional)

Die Eingabe-Layer mit Features, die als Barrieren für die Vereinfachung fungieren. Die resultierenden vereinfachten Gebäude berühren oder kreuzen die Barrieren-Features nicht. Beispiel: Beim Vereinfachen von Gebäuden kreuzen die resultierenden vereinfachten Gebäudeflächen keine der Straßen-Features, die als Barrieren definiert sind.

Feature Layer
collapsed_point_option
(optional)

Gibt an, ob eine Ausgabe-Point-Feature-Class zum Speichern der Mittelpunkte von Gebäuden erstellt wird, die entfernt werden, da sie kleiner als der Parameterwert für minimum_area sind. Die Punktausgabe wird abgeleitet. Sie erhält den gleichen Namen wie die Ausgabe-Feature-Class, die im Parameter out_feature_class angegeben wurde, jedoch mit dem Suffix _Pnt, und befindet sich im gleichen Ordner.

  • KEEP_COLLAPSED_POINTS Eine abgeleitete Ausgabe-Point-Feature-Class wird erstellt, um die Mittelpunkte der Gebäude zu speichern, die entfernt werden.
  • NO_KEEP Eine Ausgabe-Point-Feature-Class wird nicht erstellt. Dies ist die Standardeinstellung.
Boolean

Abgeleitete Ausgabe

NameErklärungDatentyp
out_point_feature_class

Die Ausgabe-Point-Feature-Class speichert Punkte, die für Gebäude stehen, die entfernt wurden, da sie kleiner als der Parameterwert für Mindestfläche (minimum_area in Python) sind. Dieser Parameter wird nur verwendet, wenn der Parameter Zusammengefasste Punkte beibehalten (collapsed_point_option = "KEEP_COLLAPSED_POINTS" in Python) aktiviert wurde.

Feature-Class

Codebeispiel

SimplifyBuilding – Beispiel 1 (Python-Fenster)

Das folgende Skript für das Python-Fenster veranschaulicht, wie die Funktion SimplifyBuilding im unmittelbaren Modus verwendet wird.

import arcpy
import arcpy.cartography as CA
arcpy.env.workspace = "C:/data"
CA.SimplifyBuilding("buildings.shp", "C:/output/output.gdb/simplified_buildings", 10)
SimplifyBuilding – Beispiel 2 (eigenständiges Skript)

Das folgende eigenständige Skript veranschaulicht, wie die Funktion SimplifyBuilding verwendet wird.

# Name: SimplifyBuilding_Example2.py
# Description: Aggregate building features and then simplify them
# Import system modules
import arcpy
import arcpy.cartography as CA
# Set environment settings
arcpy.env.workspace = "C:/data/Portland.gdb/Buildings"
# Set local variables
inBuildingFeatures = "houses"
inBarrierFeatures = "roads"
aggregatedFeatures = "C:/data/PortlandOutput.gdb/residential_areas"
simplifiedFeatures = "C:/data/PortlandOutput.gdb/residential_simplified"
# Aggregate house polygons.
CA.AggregatePolygons(inBuildingFeatures, aggregatedFeatures, 10, 100, 100, "ORTHOGONAL")
# Simplify residential building polygons.
CA.SimplifyBuilding(aggregatedFeatures, simplifiedFeatures, 10, 100, "CHECK_CONFLICTS", inBarrierFeatures, "KEEP_COLLAPSED_POINTS")

Lizenzinformationen

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

Verwandte Themen