Gekachelte Beschriftungen in Annotation (Cartography)

Zusammenfassung

Konvertiert Beschriftungen für Layer in einer Karte auf der Grundlage eines Polygon-Index-Layers in Annotationen.

Das Werkzeug unterteilt eine Karte in Kacheln und erstellt dann für jede Kachel Annotationen. Dies ist beim Konvertieren einer großen Anzahl von Beschriftungen in Annotationen nützlich. Der Polygon-Index-Layer kann mit dem Werkzeug Kachelschema des Kartenserver-Cache in Polygone oder Indexgitter-Features generiert werden oder es kann sich um eine beliebige andere Polygon-Feature-Class handeln, die den Bereich für die zu erstellenden Annotationen umfasst.

Verwendung

  • Beschriftungen können für einen einzelnen Layer oder die gesamte Karte in eine Annotation konvertiert werden. Findet die Konvertierung für einen einzelnen Layer statt, muss er angegeben werden und sich in der Karte befinden.

  • Die Maßstabsbereiche der Beschriftungsklassen werden berücksichtigt. Wenn das Werkzeug Annotationen für einen bestimmten Bezugsmaßstab generiert, konvertiert es nur die Beschriftungsklassen, die aktiviert und bei diesem Maßstab sichtbar sind.

    Hinweis:

    Maßstabsbereiche für Beschriftungsklassen werden in ArcGIS Pro in den Eigenschaften des Layers festgelegt. Konfigurieren Sie die Beschriftungseigenschaften, und speichern Sie das Projekt, bevor Sie dieses Werkzeug ausführen.

  • Wenn Sie vor dem Ausführen des Werkzeugs Kacheln auswählen, werden nur für die ausgewählten Kacheln Annotationen erstellt.

  • Wenn nur die Annotationen für einige Kacheln im Polygon-Index-Layer aktualisiert werden sollen, wählen Sie zuerst die Annotation-Features mit genau diesem "TileID"-Wert aus, und löschen Sie sie. Wählen Sie dann die Polygon-Features aus, und führen Sie das Werkzeug erneut aus.

  • Eine der Ausgaben dieses Werkzeugs ist eine Reihe von Gruppen-Layern. Einer der Gruppen-Layer enthält einen Gruppen-Layer für jeden Bezugsmaßstab, für den Annotationen erstellt wurden.

  • Im Bereich "Katalog" oder in ModelBuilder können Sie den Ausgabe-Gruppen-Layer mit dem Werkzeug In Layer-Datei speichern in einer Layer-Datei speichern.

  • Ein vorhandener Gruppen-Layer wird überschrieben, wenn Sie denselben Layer-Namen angeben und das Überschreiben von Ausgaben ausdrücklich zulassen.

  • Wenn in der Karte doppelte Feature-Class-Namen gefunden werden, wird der Annotation nach dem Feature-Class-Namen eine Zahl angefügt (z. B. "Cities01Anno10000", "Cities02Anno10000" usw.).

  • Annotation-Feature-Classes werden nicht überschrieben, wenn ein bereits vorhandener Suffix angegeben wird. In diesem Fall wird dem Suffix für die Annotation-Feature-Class eine Zahl hinzugefügt (z. B. "CitiesAnno10000", "CitiesAnno10000_1" usw.).

  • Der Bezugsmaßstab für die Annotation-Feature-Classes kann auf die nachfolgenden zwei Arten angegeben werden:

    • Die erste Option besteht darin, den Bezugsmaßstab der Ausgabe-Annotation-Feature-Classes anhand eines Feldes des Polygon-Index-Layers zu ermitteln. Verwenden Sie diese Option, wenn Sie Annotationen für eine Vielzahl von Maßstabsebenen erstellen.
    • Die zweite Option besteht in der expliziten Angabe eines Bezugsmaßstabs. Dieser Bezugsmaßstab wird für alle Annotation-Feature-Classes verwendet. Wenn in der Karte ein Bezugsmaßstab festgelegt wird, ist dies der Standardwert für das Werkzeug. Wenn kein Bezugsmaßstab in der Karte festgelegt ist, wird der aktuelle Maßstab als Standardwert angegeben.

  • Wenn Sie einen Polygonindex-Layer verwenden, der vom Werkzeug Kachelschema des Kartenserver-Cache in Polygone erstellt wurde, verwenden Sie das Feld Tile_Scale als Bezugsmaßstabsfeld-Parameter. Für jede Kombination aus Layer und "Tile_Scale" wird eine neue Annotation-Feature-Class erstellt.

  • Erzeugen Sie Annotationen für eine Vielzahl von Bezugsmaßstäben, konzipieren Sie die Karte für jeden dieser Maßstäbe, und legen Sie keinen Bezugsmaßstab fest.

  • Wird ein Koordinatensystemfeld aus dem Polygon-Index-Layer angegeben, wird die Annotation für jede Kachel zum Zweck der Darstellung und Platzierung in dieses Koordinatensystem projiziert.

  • Ist der Parameter Feature-bezogene Annotationen erstellen nicht aktiviert, kann der Parameter Beschriftungen aller Layer in eine einzige Ausgabe-Feature-Class konvertieren zum Erstellen einer Annotation-Feature-Class für die gesamte Karte verwendet werden.

    Beim Erstellen einer Annotation-Feature-Class für die gesamte Karte können Beschriftungsklassen mit ähnlichen Eigenschaften über die Funktion Ähnliche Beschriftungsklassen zusammenführen zu einer Annotationsklasse zusammengeführt werden.

  • Feature-bezogene Annotationen werden einem spezifischen Feature in einer anderen Feature-Class der Geodatabase zugeordnet. Wenn Sie die Option ausgewählt haben, wird ferner automatisch eine Beziehungsklasse generiert, wenn Sie die Ausgabe-Annotation-Feature-Class erstellen.

  • Wenn Sie Feature-bezogene Annotationen erstellen, muss der Ausgabe-Workspace derselbe wie der mit diesen verknüpften Feature-Classes sein.

  • Möglicherweise werden einige Beschriftungen momentan nicht auf der Karte angezeigt, da kein Platz für sie vorhanden ist. Um diese Beschriftungen zu konvertieren, aktivieren Sie das Kontrollkästchen Nicht platzierte Annotation erstellen. Dadurch werden die nicht platzierten Beschriftungen in der Annotation-Feature-Class gespeichert, sodass Sie diese später in einer Editiersitzung positionieren können.

  • Die Workspaces "in_memory" und "memory" unterstützen keine Feature-bezogenen Annotationen.

Syntax

TiledLabelsToAnnotation(input_map, polygon_index_layer, out_geodatabase, out_layer, anno_suffix, {reference_scale_value}, {reference_scale_field}, {tile_id_field}, {coordinate_sys_field}, {map_rotation_field}, {feature_linked}, {generate_unplaced_annotation}, {which_layers}, {single_layer}, {require_symbol_id}, {auto_create}, {update_on_shape_change}, {multiple_feature_classes}, {merge_label_classes})
ParameterErklärungDatentyp
input_map

Die Karte mit den Beschriftungen, die in Annotationen konvertiert werden sollen.

Map
polygon_index_layer

Der Polygon-Layer, der Kachel-Features enthält.

Table View
out_geodatabase

Der Workspace, in dem die Ausgabe-Feature-Classes gespeichert werden. Der Workspace kann eine vorhandene Geodatabase oder ein vorhandenes Feature-Dataset sein.

Workspace; Feature Dataset
out_layer

Der Gruppen-Layer, der die erstellten Annotationen enthält. Sie können den Ausgabe-Gruppen-Layer mit dem Werkzeug In Layer-Datei speichern in einer Layer-Datei speichern.

Group Layer
anno_suffix

Das Suffix, das jeder neuen Annotation-Feature-Class hinzugefügt wird. Dieses Suffix wird für jede neue Annotation-Feature-Class an den Namen der Quell-Feature-Class angehängt. Der Bezugsmaßstab für die Annotation folgt auf dieses Suffix.

String
reference_scale_value
(optional)

Der Maßstabswert, der als Bezug für die Annotation verwendet wird. Alle Symbol- und Textgrößen in der Annotation werden relativ zu diesem Maßstab angezeigt.

Double
reference_scale_field
(optional)

Das Feld im Polygon-Index-Layer, das den Bezugsmaßstab der Annotation festlegt. Alle Symbol- und Textgrößen in der Annotation werden relativ zu diesem Maßstab angezeigt.

Field
tile_id_field
(optional)

Ein Feld im Polygon-Index-Layer, das die gekachelte Fläche eindeutig identifiziert. Mit diesen Werten wird das Feld "TileID" in der Attributtabelle der Annotation-Feature-Class ausgefüllt.

Field
coordinate_sys_field
(optional)

Ein Feld im Polygon-Index-Layer, das das Koordinatensystem für jede Kachel enthält. Aufgrund der zur Speicherung eines Koordinatensystems erforderlichen Feldlänge muss ein Polygon-Index-Layer, der ein Koordinatensystemfeld enthält, eine Geodatabase-Feature-Class sein.

Field
map_rotation_field
(optional)

Ein Feld im Polygon-Index-Layer, das den Winkel enthält, um den der Datenrahmen gedreht werden soll.

Field
feature_linked
(optional)
Lizenz:

Dieser Parameter ist nur mit ArcGIS Desktop Standard- und ArcGIS Desktop Advanced-Lizenzen verfügbar.

Gibt an, ob die Ausgabe-Annotation-Feature-Class mit den Features in einer anderen Feature-Class verknüpft werden.

  • STANDARD Die Ausgabe-Annotation-Feature-Class wird nicht mit den Features in einer anderen Feature-Class verknüpft. Dies ist die Standardeinstellung.
  • FEATURE_LINKEDDie Ausgabe-Annotation-Feature-Class wird mit den Features in einer anderen Feature-Class verknüpft.
Boolean
generate_unplaced_annotation
(optional)

Gibt an, ob aus nicht platzierten Beschriftungen eine nicht platzierte Annotation erstellt werden sollen.

  • NOT_GENERATE_UNPLACED_ANNOTATIONAnnotations werden nur für Features erstellt, die derzeit beschriftet sind. Dies ist die Standardeinstellung.
  • GENERATE_UNPLACED_ANNOTATIONNicht platzierte Annotationen werden in der Annotation-Feature-Class gespeichert. Das Statusfeld für diese Annotation wird auf "Nicht platziert" festgelegt.
Boolean
which_layers
(optional)

Gibt an, ob die Annotation für alle Layer in der Karte oder für einen einzelnen Layer erstellt wird. Bei einem einzelnen Layer muss dieser angegeben werden.

  • ALL_LAYERSBeschriftungen werden für die gesamte Karte in eine Annotation konvertiert. Dies ist die Standardeinstellung.
  • SINGLE_LAYERBeschriftungen werden für einen einzelnen Layer in eine Annotation konvertiert. Der Layer muss angegeben werden.
String
single_layer
(optional)

Der Layer, der konvertiert wird, wenn der Parameter which_layers auf SINGLE_LAYER gesetzt ist. Dieser Layer muss sich in der Karte befinden.

Feature Layer
require_symbol_id
(optional)

Gibt an, ob alle Textsymboleigenschaften bearbeitet werden können.

  • NO_REQUIRE_IDAlle Textsymboleigenschaften können bearbeitet werden. Dies ist die Standardeinstellung.
  • REQUIRE_IDEs können nur die Symboleigenschaften bearbeitet werden, die ermöglichen, dass Annotation-Features die Bezüge auf die zugehörigen Textsymbole in der Sammlung beibehalten.
Boolean
auto_create
(optional)

Gibt an, ob beim Hinzufügen neuer Features zur verknüpften Feature-Class eine Annotation erstellt werden sollen, wenn der Parameter feature_linked auf FEATURE_LINKED gesetzt ist.

  • AUTO_CREATEEine Feature-bezogene Annotation wird erstellt, wenn der verknüpften Feature-Class neue Features hinzugefügt werden. Dies ist die Standardeinstellung.
  • NO_AUTO_CREATEEs wird keine Feature-bezogene Annotation erstellt, wenn der verknüpften Feature-Class neue Features hinzugefügt werden.
Boolean
update_on_shape_change
(optional)

Gibt an, ob die Position der Annotation beim Aktualisieren der Form des verknüpften Features aktualisiert werden soll, wenn der Parameter feature_linked auf FEATURE_LINKED gesetzt ist.

  • SHAPE_UPDATEDie Position der Annotation wird aktualisiert, wenn sich die Form des verknüpften Features geändert hat. Dies ist die Standardeinstellung.
  • NO_SHAPE_UPDATEDie Position der Annotation wird nicht aktualisiert, wenn sich die Form des verknüpften Features geändert hat.
Boolean
multiple_feature_classes
(optional)

Gibt an, ob die Beschriftungen in einzelne Annotation-Feature-Classes oder nur eine einzige Annotation-Feature-Class konvertiert werden. Findet die Konvertierung in eine einzige Annotation-Feature-Class statt, kann die Annotation nicht Feature-bezogen sein.

  • SINGLE_FEATURE_CLASSBeschriftungen aller Layer werden in eine einzige Annotation-Feature-Class konvertiert.
  • FEATURE_CLASS_PER_FEATURE_LAYERBeschriftungen werden in einzelne Annotation-Feature-Classes konvertiert, die dem jeweiligen Layer entsprechen. Dies ist die Standardeinstellung.
Boolean
merge_label_classes
(optional)

Gibt an, ob ähnliche Beschriftungsklassen zusammengeführt werden sollen, wenn der Parameter multiple_feature_classes auf SINGLE_FEATURE_CLASS gesetzt ist.

  • MERGE_LABEL_CLASSBeschriftungsklassen mit ähnlichen Eigenschaften werden zusammengeführt, wenn eine einzige Feature-Class erstellt wird.
  • NO_MERGE_LABEL_CLASSBeschriftungsklassen werden nicht zusammengeführt. Dies ist die Standardeinstellung.
Boolean

Abgeleitete Ausgabe

NameErklärungDatentyp
out_workspace

Der Workspace, in dem die Ausgabe-Feature-Classes gespeichert werden.

Workspace; Feature-Dataset

Codebeispiel

TiledLabelsToAnnotation – Beispiel (Python-Fenster)

Python-Beispiel für TiledLabelsToAnnotation, das Beschriftungen für einen Layer in einer Karte auf der Grundlage eines Polygonindex-Layers in Annotationen konvertiert.

import arcpy
arcpy.env.workspace = "C:/data/data.gdb"
arcpy.TiledLabelsToAnnotation_cartography("Map1", "Tiles", "data.gdb", 
                                          "GroupAnno", "Anno", "", "Tile_Scale",  
                                          "OID", "", "", "FEATURE_LINKED", 
                                          "GENERATE_UNPLACED_ANNOTATION", 
                                          "SINGLE_LAYER", "Towns", 
																																										"REQUIRE_ID", "AUTO_CREATE", 
                                          "SHAPE_UPDATE", "", "")
TiledLabelsToAnnotation – Beispiel 2 (Workflowskript)

Das folgende Skript veranschaulicht einen Workflow mit den Funktionen MapServerCacheTilingSchemeToPolygons und TiledLabelsToAnnotation.

# Name: TiledLabelsToAnnotation_Example2.py
# Description: Create a tile feature class and use those tiles to create annotation.
# Requirements: ArcGIS Desktop Advanced license
# Import system modules
import arcpy
import os
# Set environment settings
arcpy.env.workspace = "C:/data/data.gdb"
# Set local variables
aprx = arcpy.mp.ArcGISProject(r"C:/data/Annotation.aprx")
inMap = aprx.listMaps("Map")[0]
inTilingScheme = os.path.join(
    arcpy.GetInstallInfo()['InstallDir'], 
    'Resources\\TilingSchemes\\ArcGIS_Online_Bing_Maps_Google_Maps.xml')
outFeatureClass = "C:/data/data.gdb/Tiles"
inTileExtent = "USE_MAP_EXTENT"
inClipping = "CLIP_TO_HORIZON"
inAntialiasing = "NONE"
inScales = ""
# Execute MapServerCacheTilingSchemeToPolygons
arcpy.MapServerCacheTilingSchemeToPolygons_cartography(
    inMap, inTilingScheme, outFeatureClass, inTileExtent, inClipping, 
    inAntialiasing, inScales)
# Set local variables
inPolygonIndexLayer = "Tiles"
inOutGeodatabase = "C:/data/data.gdb"
outOutLayer = "GroupAnno"
inAnnoSuffix = "Anno"
inRefScaleValue = ""
inRefScaleField = "Tile_Scale"
inTileIDField = "OID"
inCoordSysField = ""
inMapRotationField = ""
inFeatureLinked = "STANDARD"
inGenerateUnplaced = "GENERATE_UNPLACED_ANNOTATION"
inWhichLayers = "ALL_LAYERS"
inSingleLayer = ""
inRequireSymbolID = ""
inAutoCreate = ""
inUpdateOnShapeChange = ""
inMultipleFeatureClasses = "SINGLE_FEATURE_CLASS"
inMergeFeatureClasses = "MERGE_LABEL_CLASS"
 
# Execute TiledLabelsToAnnotation
arcpy.TiledLabelsToAnnotation_cartography(
    inMap, inPolygonIndexLayer, inOutGeodatabase, outOutLayer, inAnnoSuffix, 
    inRefScaleValue, inRefScaleField, inTileIDField, inCoordSysField, 
    inMapRotationField, inFeatureLinked, inGenerateUnplaced, inWhichLayers, 
    inSingleLayer, inRequireSymbolID, inAutoCreate, inUpdateOnShapeChange, 
    inMultipleFeatureClasses, inMergeFeatureClasses)

Umgebungen

Lizenzinformationen

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

Verwandte Themen