Gebäudekonflikte lösen (Kartografie)

Zusammenfassung

Löst Symbolkonflikte zwischen Gebäuden in Bezug auf lineare Barrieren-Features durch Verschieben, Größenanpassung oder Ausblenden von Gebäuden.

Abbildung

Beispiel für das Werkzeug "Gebäudekonflikte lösen"
Konflikte werden durch Verschieben, Größenanpassung oder Ausblenden von Gebäuden gelöst.

Verwendung

  • Dieses Werkzeug funktioniert durch Bewertung von Grafikkonflikten bei symbolisierten Features. Die Ausdehnung der Symbole und der Bezugsmaßstab werden zusammen bewertet. Führen Sie dieses Werkzeug erst aus, nachdem Sie die Darstellung der Symbole endgültig festgelegt haben, und stellen Sie sicher, dass der Bezugsmaßstab dem beabsichtigten endgültigen Ausgabemaßstab entspricht.

    Weitere Informationen zu diesem Werkzeug finden Sie unter Funktionsweise von "Gebäudekonflikte lösen".

  • Vorsicht:

    Dieses Werkzeug erzeugt keine Ausgabe-Layer, ändert aber stattdessen die Geometrie der Quell-Feature-Classes der Eingabe-Layer. Es wird empfohlen, dass Sie vor der Ausführung dieses Werkzeugs eine Kopie Ihrer Eingabe-Features erstellen.

  • Der Parameterwert Unsichtbarkeitsfeld muss vorhanden sein und für alle Eingabe-Feature-Classes denselben Namen tragen. Features, die sichtbar bleiben sollen, wird der Wert 0 zugewiesen; jenen, die aus der Anzeige entfernt werden sollen, wird der Wert 1 zugewiesen. Zeigen Sie die resultierende vereinfachte Sammlung mithilfe einer Layer-Definitionsabfrage oder einer Auswahl an (d. h. invisibility <> 1). Sie können zum Speichern von verschiedenen Ergebnissen (für verschiedene Ausgabemaßstäbe) in der gleichen Feature-Class mehrere Unsichtbarkeitsfelder verwenden.

  • Wenn Punkt-Gebäude-Layer als Eingabe-Layer verwendet werden, muss die Eigenschaft Winkel des Markersymbol-Layers auf ein Feld in der Feature-Class festgelegt werden. In diesem Feld werden die an der Rotation vorgenommenen Anpassungen gespeichert. Wenn das Gebäudesymbol mindestens zwei Markersymbol-Layer enthält oder im Gebäude-Layer mindestens zwei Symbole vorhanden sind, müssen alle in der Symbolisierung des Layers vorhandenen Markersymbol-Layer auf das gleiche Feld in der Attributtabelle festgelegt werden.

  • Bevor Konflikte bewertet werden, werden polygonale Gebäude auf eine vom Parameter Minimal zulässige Gebäudegröße festgelegte minimale Größe vergrößert. Die minimale Größe wird als lineare Entfernung an der kürzesten Seite eines am besten zum Feature passenden gedrehten Rahmens gemessen. Wenn Sie die endgültige Größe von Gebäuden in den Ausgabeergebnissen überprüfen möchten, fügen Sie in eine der Eingabe-Building-Feature-Classes ein Double- oder Float-Feld mit dem Namen RBC_SIZE ein. Bei der Ausführung des Werkzeugs wird dieses Feld mit der kürzesten Seite eines gedrehten Rahmens um jedes Feature aktualisiert.

  • Der Parameter Hierarchiefeld ist optional. Wenn nicht angegeben, wird Gebäuden eine relative Bedeutung auf der Grundlage des Umfangs des Gebäudes und der Nähe von Barrieren zugewiesen. Näher an mehr als einer Barriere liegende größere Gebäude werden als wichtiger als relativ weit von einer Barriere liegende kleinere Gebäude bewertet. Sie können ein teilweise aufgefülltes Hierarchy-Feld verwenden, in dem nur den bedeutenden Gebäuden ein Hierarchiewert zugewiesen wird und die relative Bedeutung der anderen Features (mit einem Hierarchiewert NULL) intern berechnet wird.

  • Wenn der Parameter Hierarchiefeld verwendet wird, können Sie die Sichtbarkeit von Gebäuden durch Zuweisen des Hierarchiewertes 0 erzwingen. Sie werden nicht vom Werkzeug maskiert. Ein Gebäude mit einer Hierarchie von 0 wird als lokal bedeutend betrachtet, sodass nahe gelegene Gebäude möglicherweise mehr beeinträchtigt werden, als dies ohne Sichtbarkeit des Gebäudes der Fall wäre. Gebäude mit einer Hierarchie von 0 können zur Lösung von Konflikten und zur Übereinstimmung mit anderen erforderlichen Parametern weiterhin transformiert (verschoben, gedreht oder vergrößert/verkleinert) werden.

  • Vorsicht:

    Wenn sich die Eingabe-Features nicht in einem projizierten Koordinatensystem befinden, wird eine Warnung ausgelöst. Dieses Werkzeug beruht auf linearen Entfernungseinheiten, sodass in einem unprojizierten Koordinatensystem unerwartete Ergebnisse auftreten können. Es wird dringend empfohlen, dieses Werkzeug für Daten in einem projizierten Koordinatensystem auszuführen, um sicherzustellen, dass die Ergebnisse gültig sind. Wenn das Koordinatensystem fehlt oder unbekannt ist, wird ein Fehler ausgelöst und keine Verarbeitung ausgeführt.

  • Gebäude, die geometrisch in Konflikt mit Barrieren stehen (d. h. die tatsächliche Geometrie – nicht nur die Symbolisierung – der Gebäude überschneidet sich mit der eines Barrieren-Features, z. B. einer Straße), werden nicht vom Barrieren-Feature weg verschoben. Diese Gebäude werden möglicherweise für eine Maskierung im Verlauf der Abarbeitung der Konfliktlösung gekennzeichnet, aber sie werden nicht verschoben. Ein Konflikt bleibt bestehen.

  • Wenn die Symbolisierung der Barrieren-Features nicht symmetrisch über die Geometrie verteilt ist, d. h. das Symbol ist auf der einen Seite der Linie dicker als auf der anderen Seite, ist der Abstand zwischen Gebäude und Barriere auf der Seite mit der dünneren Symbolisierung möglicherweise größer.

  • Bei Verarbeitung großer Datasets oder gemeinsamer Verarbeitung mehrerer Barrieren-Layer werden möglicherweise Speichereinschränkungen überschritten. Erwägen Sie in diesem Fall, die Eingabegebäudedaten partitionsweise zu verarbeiten, indem Sie eine relevante Polygon-Feature-Class in der Umgebungseinstellung Partitions-Features angeben. Die Teile der Gebäudedaten, die durch Partitionsgrenzen definiert werden, werden sequenziell verarbeitet. Die sich ergebenden Layer sind an Partitionsrändern nahtlos und konsistent. Weitere Informationen zum Ausführen dieses Werkzeugs mit Partitionierung finden Sie unter Funktionsweise von "Gebäudekonflikte lösen".

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Gebäude-Layer

Die Eingabe-Layer mit Gebäude-Features, die möglicherweise in Konflikt stehen oder kleiner als zulässig sind. Gebäude können Punkte oder Polygone sein. Gebäude werden geändert, um Konflikte mit anderen Gebäuden und Barrieren-Features aufzulösen.

Wenn Punkt-Gebäude-Layer als Eingaben verwendet werden, muss die Eigenschaft Winkel des Markersymbol-Layers auf ein Feld in der Feature-Class festgelegt werden. In diesem Feld werden die an der Rotation vorgenommenen Anpassungen gespeichert.

Layer
Unsichtbarkeitsfeld

Das Feld, in dem die Unsichtbarkeitswerte gespeichert werden, mit denen Gebäude zur Auflösung von Symbolkonflikten aus der Anzeige entfernt werden können. Gebäude mit dem Wert 1 werden aus der Anzeige entfernt, Gebäude mit dem Wert 0 werden nicht entfernt. Verwenden Sie für den Layer eine Definitionsabfrage, um nur sichtbare Gebäude anzuzeigen. Es werden keine Features gelöscht.

String
Eingabe-Barriere-Layer

Die Layer mit den linearen oder Polygon-Features, die Konfliktbarrieren für Eingabe-Gebäude-Features darstellen. Gebäude werden geändert, um Konflikte zwischen Gebäuden und Barrieren aufzulösen. Der Ausrichtungswert ist ein boolescher Wert, der angibt, ob Gebäude am Barrieren-Layer ausgerichtet werden.

Der Abstand gibt die Entfernung an, um die Gebäude zum oder vom Barrieren-Layer weg verschoben werden. Zusammen mit dem Wert muss eine Einheit eingegeben werden.

  • Der Abstandswert 0 (null) fängt Gebäude direkt an der Kante der Barriere oder der Umrisssymbolisierung.
  • Ein Abstandswert von NULL (nicht angegeben) bedeutet, dass Gebäude nicht in Richtung oder weg von Barrierenlinien oder Umrissen verschoben werden, es sei denn, die Verschiebung ist zur Auflösung von Konflikten erforderlich.

Hinweis:

Wenn keine Einheit zusammen mit dem Abstandswert eingegeben wird (d. h. 10 statt 10 Meter), wird die lineare Einheit des Koordinatensystems des Eingabe-Features verwendet.

Value Table
Gebäudeabstand

Die minimale zulässige Entfernung zwischen symbolisierten Gebäuden in diesem Maßstab. Näher aneinander liegende Gebäude werden verschoben oder ausgeblendet, um diese Entfernung zu erzwingen. Die minimal zulässige Entfernung wird relativ zum Bezugsmaßstab (d. h. 15 Meter beim Maßstab 1:50.000) festgelegt. Wenn der Bezugsmaßstab nicht festgelegt ist, ist der Wert 0.

Linear Unit
Minimal zulässige Gebäudegröße

Die minimal zulässige Größe der kürzesten Seite eines gedrehten optimalen Rahmens um das im Bezugsmaßstab gezeichnete symbolisierte Gebäude-Feature. Gebäude mit einer Rahmenseite, die kleiner als dieser Wert ist, werden vergrößert, sodass dieser Wert erreicht wird. Die Größe wird möglicherweise nicht proportional angepasst, was zu einer Änderung der Morphologie des Gebäudes führt.

Linear Unit
Hierarchiefeld
(optional)

Das Feld, das hierarchische Rangstufen für die Bedeutung der Features enthält, wobei 1 eine große und größere Ganzzahlen eine geringere Bedeutung darstellen. Mit dem Wert 0 (null) bleibt die Sichtbarkeit des Gebäudes erhalten, obwohl es möglicherweise zur Auflösung eines Konflikts geringfügig verschoben wird. Wenn dieser Parameter nicht verwendet wird, wird die Bedeutung von Features vom Werkzeug auf der Grundlage des Umfangs und der Nähe zu Barrieren-Features bewertet.

String

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Ausgabe-Layer

Die aktualisierten Eingabe-Features.

Layer

arcpy.cartography.ResolveBuildingConflicts(in_buildings, invisibility_field, in_barriers, building_gap, minimum_size, {hierarchy_field})
NameErläuterungDatentyp
in_buildings
[in_buildings,...]

Die Eingabe-Layer mit Gebäude-Features, die möglicherweise in Konflikt stehen oder kleiner als zulässig sind. Gebäude können Punkte oder Polygone sein. Gebäude werden geändert, um Konflikte mit anderen Gebäuden und Barrieren-Features aufzulösen.

Wenn Punkt-Gebäude-Layer als Eingaben verwendet werden, muss die Eigenschaft Winkel des Markersymbol-Layers auf ein Feld in der Feature-Class festgelegt werden. In diesem Feld werden die an der Rotation vorgenommenen Anpassungen gespeichert.

Layer
invisibility_field

Das Feld, in dem die Unsichtbarkeitswerte gespeichert werden, mit denen Gebäude zur Auflösung von Symbolkonflikten aus der Anzeige entfernt werden können. Gebäude mit dem Wert 1 werden aus der Anzeige entfernt, Gebäude mit dem Wert 0 werden nicht entfernt. Verwenden Sie für den Layer eine Definitionsabfrage, um nur sichtbare Gebäude anzuzeigen. Es werden keine Features gelöscht.

String
in_barriers
[[Layer, Boolean, Linear Unit],...]

Die Layer mit den linearen oder Polygon-Features, die Konfliktbarrieren für Eingabe-Gebäude-Features darstellen. Gebäude werden geändert, um Konflikte zwischen Gebäuden und Barrieren aufzulösen. Der Ausrichtungswert ist ein boolescher Wert, der angibt, ob Gebäude am Barrieren-Layer ausgerichtet werden.

Der Abstand gibt die Entfernung an, um die Gebäude zum oder vom Barrieren-Layer weg verschoben werden. Zusammen mit dem Wert muss eine Einheit eingegeben werden.

  • Der Abstandswert 0 (null) fängt Gebäude direkt an der Kante der Barriere oder der Umrisssymbolisierung.
  • Ein Abstandswert von NULL (nicht angegeben) bedeutet, dass Gebäude nicht in Richtung oder weg von Barrierenlinien oder Umrissen verschoben werden, es sei denn, die Verschiebung ist zur Auflösung von Konflikten erforderlich.

Hinweis:

Wenn keine Einheit zusammen mit dem Abstandswert eingegeben wird (d. h. 10 statt 10 Meter), wird die lineare Einheit des Koordinatensystems des Eingabe-Features verwendet.

Value Table
building_gap

Die minimale zulässige Entfernung zwischen symbolisierten Gebäuden in diesem Maßstab. Näher aneinander liegende Gebäude werden verschoben oder ausgeblendet, um diese Entfernung zu erzwingen. Die minimal zulässige Entfernung wird relativ zum Bezugsmaßstab (d. h. 15 Meter beim Maßstab 1:50.000) festgelegt. Wenn der Bezugsmaßstab nicht festgelegt ist, ist der Wert 0.

Linear Unit
minimum_size

Die minimal zulässige Größe der kürzesten Seite eines gedrehten optimalen Rahmens um das im Bezugsmaßstab gezeichnete symbolisierte Gebäude-Feature. Gebäude mit einer Rahmenseite, die kleiner als dieser Wert ist, werden vergrößert, sodass dieser Wert erreicht wird. Die Größe wird möglicherweise nicht proportional angepasst, was zu einer Änderung der Morphologie des Gebäudes führt.

Linear Unit
hierarchy_field
(optional)

Das Feld, das hierarchische Rangstufen für die Bedeutung der Features enthält, wobei 1 eine große und größere Ganzzahlen eine geringere Bedeutung darstellen. Mit dem Wert 0 (null) bleibt die Sichtbarkeit des Gebäudes erhalten, obwohl es möglicherweise zur Auflösung eines Konflikts geringfügig verschoben wird. Wenn dieser Parameter nicht verwendet wird, wird die Bedeutung von Features vom Werkzeug auf der Grundlage des Umfangs und der Nähe zu Barrieren-Features bewertet.

String

Abgeleitete Ausgabe

NameErläuterungDatentyp
out_layers

Die aktualisierten Eingabe-Features.

Layer

Codebeispiel

ResolveBuildingConflicts – Beispiel 1 (Python-Fenster)

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

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.env.referenceScale = "50000"

arcpy.ResolveBuildingConflicts(["C:/data/footprints.lyr", "C:/data/bldg_points.lyr"],                                
                               "invisible",
                               [["C:/data/roads.lyr", "true", "5 Meters"],
                                ["C:/data/trails.lyr", "false", "10 Meters"],
                                ["C:/data/streams.lyr", "false", "5 Meters"]],
                               "10 meters", 
                               "15 meters", 
                               "bldg_hierarchy")
ResolveBuildingConflicts – Beispiel 2 (eigenständiges Skript)

Dieses eigenständige Skript stellt ein Beispiel für die Verwendung der Funktion ResolveBuildingConflicts dar.

# Name: ResolveBuildingConflicts_standalone_script.py
# Description: Resolves the symbology conflicts between
#              buildings and nearby barriers,
#              in this case - roads
 
# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.workspace = "C:/data"
env.referenceScale = "50000"

# Set local variables
in_buildings = "C:/data/footprints.lyr;C:/data/bldg_pts.lyr"
invisibility_field = "invisible"
in_barriers = "'C:/data/roads.lyr' 'true' '5 Meters';\
              'C:/data/trails.lyr' 'false' '10 Meters';\
              'C:/data/streams.lyr' 'false' '5 Meters'"
building_gap = "10 meters"
minimum_size = "15 meters"
hierarchy_field = "bldg_hierarchy"

# Execute Resolve Building Conflicts
arcpy.ResolveBuildingConflicts(in_buildings,
                               invisibility_field,
                               in_barriers,
                               building_gap,
                               minimum_size,
                               hierarchy_field)

Lizenzinformationen

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

Verwandte Themen