Zusammenfassung
Hiermit werden Maskierungspolygone mit der festgelegten Form und Größe an den Schnittpunkten zweier symbolisierter Eingabe-Layer – Maskierungs-Layer und maskierter Layer – erstellt.
Verwendung
Dieses Werkzeug akzeptiert Punkt-, Linien- und Polygon-Feature-Layer sowie Geodatabase-Annotations-Layer als Eingabe.
Ränder sind in der Regel größer als 0. Bei einer Randgröße von 0 werden Maskierungen erstellt, die die genaue Form der symbolisierten Features darstellen. Ein negativer Randwert erstellt Masken, die kleiner als die symbolisierten Features sind.
Beim Erstellen von Maskierungen sollten Sie beachten, dass durch das Hinzufügen von Maskierungen die Komplexität von Karten zunimmt, wodurch Darstellung, Druck und Export der Karten verlangsamt werden. Im Allgemeinen sollten Sie beim Erstellen von Maskierungen für Karten drei Punkte berücksichtigen: 1) Die Anzahl der Maskierungen, 2) die Komplexität der Maskierungen und 3) ob die Maskierungen zum Maskieren von Polygon-Features verwendet werden, die mit Linien- oder Markersymbolen gefüllt sind. Wenn die Anzahl oder Komplexität der Maskierungen zunimmt und/oder Markersymbole oder Polygon-Schraffuren maskiert werden, verlangsamt dies die Darstellung auf dem Bildschirm. Darüber hinaus kann es zu einer verminderten Performance bei Druck- und Exportvorgängen oder sogar zu ungültigen Ausgaben kommen. Dies liegt zum einen am großen Verarbeitungsaufwand beim Drucken und Exportieren von Karten mit Maskierungen und zum anderen daran, dass Grafikdateiformate exportierte Karten mit vielen komplizierten Maskierungen nur mit Einschränkungen speichern können.
Zur Gewährleistung einer optimalen und zuverlässigen Darstellungs- sowie Druck- und Export-Performance sollten Sie als wichtigste Grundregel immer die einfachsten Maskierungen verwenden, die für den Verwendungszweck der Karte möglich sind. Insbesondere für Annotationstext sind Maskierungen vom Typ "CONVEX_HULL" für viele Kartenverwendungszwecke ausreichend. Wenn Sie detailliertere Textmasken benötigen, verwenden Sie den Maskierungstyp "EXACT_SIMPLIFIED". Im Allgemeinen sollten Sie für das Maskieren großer Textmengen auf relativ großen Karten auf den Maskierungstyp "EXACT" verzichten, da zu viele komplizierte Maskierungen angelegt werden, um gültige Ausgaben effizient zu erstellen.
Die Werte für Ränder werden in Seiten- oder Karteneinheiten angegeben. In der Regel werden Sie die Werte für den Randabstand in Seiteneinheiten angeben.
Wie die Einheiten für Randwerte interpretiert werden, hängt davon ab, welche Einheiten Sie auswählen. Wenn Sie Punkte, Zoll, Millimeter oder Zentimeter auswählen, werden die Maskierungen anhand des im Seitenbereich berechneten Randabstands erstellt (Rand als ein auf dem Papier gemessener Abstand). Der für den Parameter "Bezugsmaßstab" angegebene Wert wird in dieser Berechnung berücksichtigt.
Wenn Sie andere Einheiten für den Rand auswählen, werden die Maskierungen anhand des Randabstands erstellt, der im Kartenbereich berechnet wurde (Sie können sich den Rand als real auf der Erde gemessene Entfernung vorstellen). In diesem Fall wird der für den Parameter "Bezugsmaßstab" angegebene Wert bei der Berechnung nicht berücksichtigt.
Wenn einer der Eingabe-Layer ein Annotations-Layer ist, wird der Bezugsmaßstab automatisch auf den Bezugsmaßstab der Feature-Class des Layers eingestellt, um eine genaue Berechnung der Maskierung sicherzustellen. Handelt es sich um zwei sich schneidende Annotations-Layer, müssen sie denselben Bezugsmaßstab aufweisen.
Beim Maskieren on-the-fly projizierter Annotationen sollten Maskierungen mit dem Raumbezug der Karte erstellt werden, indem der Raumbezug über den entsprechenden Parameter genau festgelegt wird. Die Lesbarkeit bleibt erhalten, wenn Text "on the fly" projiziert wird. Aus diesem Grund kann Text bei unterschiedlichen Projektionen unterschiedliche räumliche Bereiche belegen.
Bei Maskierungen von Annotations-Features wird die Schriftart beachtet. Beim Maskieren von Text müssen Sie unbedingt sicherstellen, dass auf dem Bildschirm dieselbe Schriftart verwendet wird wie in der Ausgabe. Dazu betten Sie Schriftarten in Vektorausgabe ein oder laden SoftFonts auf Drucker oder Plotter herunter.
Syntax
IntersectingLayersMasks_cartography (masking_layer, masked_layer, output_fc, reference_scale, spatial_reference, margin, method, mask_for_non_placed_anno, {attributes})
Parameter | Erläuterung | Datentyp |
masking_layer | Der symbolisierte Eingabe-Layer, der mit dem maskierten Layer geschnitten wird, um Maskierungs-Polygone zu erstellen. Dieser Layer wird in der Anzeige stärker hervorgehoben, wenn die Maskierung auf den maskierten Layer angewendet wird. | Layer |
masked_layer | Der symbolisierte Eingabe-Layer, der maskiert werden soll. Dieser Layer wird von den Maskierungs-Polygonen verdeckt. | Layer |
output_fc | Die Feature-Class, die die Maskierungs-Features enthalten wird. | Feature Class |
reference_scale | Der Bezugsmaßstab für die Berechnung der Maskierungsgeometrie, wenn Maskierungen in Seiteneinheiten angegeben sind. Dies ist in der Regel der Bezugsmaßstab der Karte. | Double |
spatial_reference | Der Raumbezug, für den die Maskierungs-Polygone erstellt werden. Dies ist nicht der Raumbezug, der der Ausgabe-Feature-Class zugewiesen wird. Es ist der Raumbezug der Karte, in der die Maskierungs-Polygone verwendet werden, da sich die Position der Symbole beim Projizieren der Features ändern kann. | Spatial Reference |
margin | Der in Seiteneinheiten angegebene Bereich um die symbolisierten Eingabe-Features, die zum Erstellen des Maskierungs-Polygons verwendet werden. Maskierungs-Polygone werden in der Regel mit einem kleinen Rand um das Symbol erstellt, um das Erscheinungsbild zu verbessern. Die Werte für Ränder werden in Seiten- oder Karteneinheiten angegeben. In der Regel werden Sie die Werte für den Randabstand in Seiteneinheiten angeben. | Linear Unit |
method | Der Typ der erstellten Maskierungsgeometrie. Es gibt vier mögliche Typen:
| String |
mask_for_non_placed_anno | Gibt an, ob Maskierungen für nicht platzierte Annotationen erstellt werden sollen. Diese Option wird nur beim Maskieren von Geodatabase-Annotations-Layern verwendet.
| String |
attributes (optional) | Legt fest, welche Attribute von den Eingabe-Features auf die Ausgabe-Features übertragen werden.
| String |
Codebeispiel
Werkzeug "IntersectingLayersMasks" – Beispiel (Python-Fenster)
Das folgende Skript im Python-Fenster veranschaulicht, wie Sie das Werkzeug "IntersectingLayersMasks" im unmittelbaren Modus verwenden.
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.IntersectingLayersMasks_cartography("C:/data/cartography.gdb/transportation/roads",
"C:/data/cartography.gdb/transportation/railroads",
"C:/data/cartography.gdb/transportation/ilm_polys",
"25000", "", "5 meters", "EXACT_SIMPLIFIED", "", "ALL")
Werkzeug "IntersectingLayersMasks" – Beispiel (eigenständiges Python-Skript)
Dieses eigenständige Skript stellt ein Beispiel für die Verwendung des Werkzeugs "IntersectingLayersMasks" dar.
# Name: IntersectingLayersMasks_standalone_script.py
# Description: Creates masking polygons at a specified
# shape and size at the intersections of symbolized features.
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
masking_layer = "C:/data/cartography.gdb/transportation/roads"
masked_layer = "C:/data/cartography.gdb/transportation/railroads"
outpuf_fc = "C:/data/cartography.gdb/transportation/ilm_polys"
reference_scale = "25000"
spatial_reference = ""
margin = "5 meters"
method = "EXACT_SIMPLIFIED"
mask_for_non_placed_anno = ""
attributes = "ALL"
# Execute Intersecting Layers Masks
arcpy.IntersectingLayersMasks_cartography(masking_layer,
masked_layer,
output_fc,
reference_scale,
spatial_reference,
margin, method,
mask_for_non_placed_anno,
attributes)
Umgebungen
Lizenzinformationen
- ArcGIS Desktop Basic: Nein
- ArcGIS Desktop Standard: Nein
- ArcGIS Desktop Advanced: Ja