Grafikkonflikt ermitteln (Kartografie)
Zusammenfassung
Erstellt Polygone, bei denen zwei oder mehr symbolisierte Features in grafischem Konflikt stehen.
Bild
Verwendung
-
Das Werkzeug bewertet Konflikte zwischen Symbolen, nicht in der Geometrie. Der Eingabe-Layer und der Konflikt-Layer können identisch sein.
Eingabe-Layer können mit Standardsymbolen oder der Repräsentationssymbologie symbolisiert werden. Eingabe-Layer können Feature-Class-Annotations (einschließlich Symbolersetzung) enthalten. Shapefile-, Coverage- und CAD-Layer werden ebenfalls als Eingaben akzeptiert.
Die folgenden Eingaben werden vom Werkzeug nicht akzeptiert: CAD-, Coverage- oder VPF-Annotations, Bemaßungen, Diagramme, Punktdichte- oder proportionale Symbole, Raster-Layer, Network Analyst-Layer und 3D-Symbole.
In der Ausgabe-Feature-Class werden Polygone gespeichert, wobei jedes Polygon für einen Grafikkonflikt zwischen einem symbolisierten Eingabe-Feature und einem symbolisierten Konflikt-Feature steht. Die mit den in Konflikt stehenden Features verknüpften Feature-IDs werden mit dem Konfliktpolygon in den Feldern FID_<input_layer_name und FID_<conflict_layer_name gespeichert. Wenn der Konflikt-Layer und der Eingabe-Layer identisch sind, wird das zweite Feld mit FID_<input_layer_name>_1 benannt. Wenn keine Grafikkonflikte gefunden werden, ist die Ausgabe-Feature-Class leer.
-
Verwenden Sie den Parameter Konfliktentfernung, um Bereiche zu erkennen, auf der die Entfernung von Eingabe- und in Konflikt stehender Symbologie unter einem bestimmten Wert liegt. Um die Symbole werden temporäre Puffer von der halben Größe des Konfliktentfernungswerts erstellt. An allen Stellen, an denen die Puffer überlappen, werden Konfliktpolygone erstellt. Wenn die Konfliktentfernung gleich null ist, werden Konflikte überall erkannt, wo diese Symbologie selbst tatsächlich zu Überschneidungen führt. Dies ist die Standardeinstellung. Die Berechnung des Konflikts basiert auf einem Bezugsmaßstab. Wenn Sie in ArcMap auf dieses Werkzeug zugreifen, wird der Bezugsmaßstab des Datenrahmens verwendet, der die Eingabe-Layer enthält, sofern nicht die Umgebungseinstellung "Bezugsmaßstab" festgelegt wurde. Diese Umgebungseinstellung muss angegeben werden, um dieses Werkzeug in ArcCatalog auszuführen.
-
Verwenden Sie den Parameter Toleranz für Linienverbindung, um Symbolüberschneidungen zu ignorieren, bei denen sich Linienenden treffen. Dieser Wert ist nützlich, wenn Sie Liniensymbolenden verwenden, um sicherzustellen, dass die Linien als verbundene Linien wahrgenommen werden, jedoch nicht möchten, dass jeder Abschluss als Konflikt erkannt wird. Die Toleranz für Linienverbindungen wird anhand des Bezugsmaßstabs in Seiteneinheiten gemessen. Sie ist gleich dem Radius eines Kreises, dessen Mittelpunkt dem Verbindungspunkt der Linien entspricht und in dem keine Grafiküberlappungen erkannt werden. Der Standardwert ist 1 Punkt. Um diese Verbindungen zu ignorieren, verwenden Sie einen Wert, der mindestens halb so groß ist wie die Breite der Liniensymbole. Bei einem Wert von null liegt keine Toleranz vor, und an jedem Verbindungspunkt wird ein Konflikt erkannt. Dieser Parameter wird nur berücksichtigt, wenn der Eingabe-Layer und der Konflikt-Layer identisch sind.
Dieses Werkzeug funktioniert durch Bewertung von Grafikkonflikten bei symbolisierten Features. Die Symbologieausdehnung 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.
- Bei Verarbeitung von großen 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. Die Ausgabe-Feature-Class von Konfliktpolygonen wird an Polygonkanten ausgeschnitten.
Syntax
Parameter | Erläuterung | Datentyp |
in_features |
Der Eingabe-Feature-Layer mit symbolisierten Features. Die folgenden Eingaben sind nicht zulässig: CAD-, Coverage- oder VPF-Annotations, Bemaßungen, Diagramme, Punktdichte- oder proportionale Symbole, Raster-Layer, Network Analyst-Layer und 3D-Symbole. | Layer |
conflict_features |
Der Feature-Layer mit symbolisierten Features, die möglicherweise mit symbolisierten Features im Eingabe-Layer in Konflikt stehen. | Layer |
out_feature_class |
Die zu erstellende Ausgabe-Feature-Class, in der die Konfliktpolygone gespeichert werden. Hierbei darf es sich nicht um eine mit den Eingabe-Layern verknüpfte Feature-Class handeln. | Feature Class |
conflict_distance (optional) |
Gibt die Konfliktentfernung an. Es werden sowohl im Eingabe- als auch im Konflikt-Layer temporäre Puffer erstellt, die halb so groß sind wie der Wert für die Konfliktentfernung. An den Stellen, an denen die Puffer überlappen, werden Konfliktpolygone erstellt. Die Konfliktentfernung wird in Seiteneinheiten (Punkt, Zoll, Millimeter, Zentimeter) gemessen. Wenn Sie einen Wert in Karteneinheiten eingeben, wird der Wert mit dem Bezugsmaßstab in Seiteneinheiten umgerechnet. Die Standardkonfliktentfernung beträgt 0. Hierbei werden keine Puffer erstellt, und nur Symbole, die einander physisch überlappen, werden als Konflikte erkannt. | Linear unit |
line_connection_allowance (optional) |
Der Radius eines Kreises, dessen Mittelpunkt dem Verbindungspunkt der Linien entspricht und in dem keine Grafiküberlappungen erkannt werden. Dieser Parameter wird nur berücksichtigt, wenn der Eingabe-Layer und der Konflikt-Layer identisch sind. Bei einer Toleranz mit dem Wert 0 wird bei jeder Linienverbindung ein Konflikt erkannt (sofern sich Linienenden überlappen). Die Linienverbindungstoleranz wird in Seiteneinheiten berechnet (Punkte, Zoll, Millimeter, Zentimeter). Wenn Sie einen Wert in Karteneinheiten eingeben, wird der Wert mit dem Bezugsmaßstab in Seiteneinheiten umgerechnet. Der Wert kann nicht negativ sein; der Standardwert beträgt 1 Punkt. | Linear unit |
Codebeispiel
Das folgende Skript im Python-Fenster veranschaulicht, wie Sie das Werkzeug "DetectGraphicConflict" im unmittelbaren Modus verwenden.
import arcpy
from arcpy import env
env.workspace = "C:/data/cartography.gdb/buildings"
env.referenceScale = "50000"
arcpy.DetectGraphicConflict_cartography("footprints.lyr", "roads.lyr",
"C:/data/cartography.gdb/buildings/dgc_polys",
"25 meters", "0 meters")
Dieses eigenständige Skript stellt ein Beispiel für die Verwendung des Werkzeugs "DetectGraphicConflict" dar.
# Name: DetectGraphicConflict_standalone_script.py
# Description: Detects graphic conflicts between
# feature representations and stores
# the overlaps as polygons in
# the output feature class.
# Author: ESRI
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data/cartography.gdb/buildings"
env.referenceScale = "50000"
# Set local variables
in_features = "footprints.lyr"
conflict_features = "roads.lyr"
out_feature_class = "C:/data/carto.gdb/buildings/dgc_polys"
conflict_distance = "25 meters"
line_connection_allowance = "0 meters"
# Execute Detect Graphic Conflict
arcpy.DetectGraphicConflict(in_features,
conflict_features,
out_feature_class,
conflict_distance,
line_connection_allowance)