Karte in KML (Conversion)
Zusammenfassung
Dieses Werkzeug konvertiert ein Kartendokument in eine KML-Datei, die eine Übersetzung der ESRI-Geometrien und -Symbologie enthält. Diese Datei wird mit der ZIP-Komprimierung komprimiert, verfügt über die Erweiterung .kmz und kann von einem KML-Client wie ArcGIS Explorer, ArcGlobe oder Google Earth gelesen werden.
Dieses Werkzeug war zuvor in der 3D Analyst Toolbox verfügbar.
Verwendung
-
Die Ausgabe-KMZ-Datei darf nicht bereits vorhanden sein.
-
Sie können die Größe des KMZ-Ausgabedokuments reduzieren, wenn die Karte über einen maßstabsabhängigen Renderer verfügt und Sie einen geeigneten Maßstab für die Kartenausgabe wählen.
-
Wenn Sie ein einzelnes Raster-Bild ausgeben möchten, das über eine Topographie gelegt wird, verwenden Sie die Option Einzelnes zusammengesetztes Bild zurückgeben.
-
Wenn Sie jeden Layer als separates Raster-Bild ausgeben möchten, verwenden Sie die Option Vektor in Raster konvertieren (optional).
Syntax
Parameter | Erläuterung | Datentyp |
in_map_document |
Das Kartendokument, das in KML umgewandelt werden soll. | Feature layer |
data_frame |
Der Datenrahmen des Kartendokuments, das in KML umgewandelt werden soll. | Data frame |
out_kmz_file |
Die KML-Datei, in die geschrieben wird. Diese Datei wird komprimiert und weist die Erweiterung ".kmz" auf. Sie kann von einem KML-Client, wie ArcGIS Explorer, ArcGlobe oder Google Earth, gelesen werden. | KML file |
map_output_scale |
Der Maßstab, mit dem das Kartendokument exportiert wird. Jedes maßstabsabhängige Rendern wird beachtet, d. h. Layer, die nicht im Exportmaßstab sichtbar sind, sind in der erstellten KML-Datei nicht enthalten. Die Symbologie für die Karte wird von diesem Maßstab bestimmt. Wenn für die Karte ein Bezugsmaßstab definiert ist, muss er beim Festlegen dieses Parameters berücksichtigt werden. Es dürfen nur Ziffern eingegeben werden. Geben Sie den Maßstab mit "20000" an und nicht mit "1:20.000" oder "20.000". Wenn Sie eine Karte exportieren, die ausschließlich Layer enthält, welche als 3D-Vektoren angezeigt werden, und kein maßstabsabhängiges Rendern definiert ist, ist dieser Parameter für den Exportprozess nicht erforderlich und kann auf einen beliebigen Zahlenwert gesetzt werden, beispielsweise 1. | Double |
is_composite (optional) |
| Boolean |
is_vector_to_raster (optional) |
| Boolean |
extent_to_export (optional) | Die geographische Ausdehnung des zu exportierenden Gebiets. Die Ausdehnungsrechteckgrenzen sollten als eine durch Leerzeichen getrennte Zeichenfolge der geographischen WGS84-Koordinaten angegeben werden und zwar in der Form "links unten rechts oben". | Extent |
image_size (optional) |
Größe des ausgegebenen Bildes in Pixeln (optional): Definiert die vertikale und horizontale Auflösung eines beliebigen Rasters im KML-Ausgabedokument. | Long |
dpi_of_client (optional) |
Definiert die Geräteauflösung eines beliebigen Rasters im KML-Ausgabedokument. | Long |
Codebeispiel
Das folgende Skript im Python-Fenster veranschaulicht, wie Sie die Funktion Karte in KML im unmittelbaren Modus verwenden können.
import arcpy from arcpy import env env.workspace = "C:/data" arcpy.MapToKML_3d("city.mxd", "Layers", "city.kmz", "1")
Das folgende Skript im Python-Fenster veranschaulicht, wie Sie die Funktion Karte in KML in einem eigenständigen Skript verwenden.
'''********************************************************************* Name: MapToKML Example Description: This script demonstrates how to find all map documents in a given workspace and export each to a KML at the 1:10,000, 1:20,000, and 1:30,000 scale using the MapToKML tool. ''' # Import system modules import arcpy # Set environment settings arcpy.env.workspace = "C:/data" # Use the ListFiles method to identify all layer files in workspace if len(arcpy.ListFiles('*.mxd')) > 0: for mxd in arcpy.ListFiles('*.mxd'): # Set Local Variables dataFrame = 'Layers' composite = 'NO_COMPOSITE' vector = 'VECTOR_TO_VECTOR' pixels = 2048 dpi = 96 clamped = 'ABSOLUTE' for scale in range(10000, 30001, 10000): # Strips the '.mxd' part of the name and appends '.kmz' outKML = mxd[:-4]+'.kmz' #Execute MapToKML arcpy.MapToKML_conversion(mxd, dataFrame, outKML, scale, composite, vector, '', pixels, dpi, clamped) else: arcpy.AddMessage('There are no map documents (*.mxd) in '+env.workspace)