Zusammenfassung
Dieses Werkzeug konvertiert ein Kartendokument in eine KML-Datei, die eine Übersetzung der Esri Geometrien und der Esri Symbologie enthält. Diese Datei wird mit ZIP-Komprimierung komprimiert, hat die Erweiterung .kmz und kann von einem KML-Client wie ArcGIS Explorer, ArcGlobe und Google Earth gelesen werden.
Verwendung
Es gibt zwei Möglichkeiten zum Steuern der Darstellung von KML-Daten.
- Wenn Layer-Eigenschaften wie die HTML-Pop-up-Einstellung, Anzeige- und Beschriftungsausdrücke und der Alias für KMLSnippet enthalten sind, werden sie für die Erstellung von KML-Daten verwendet.
- Wenn die Layer-Eigenschaften nicht eingestellt sind und die Feature-Class bestimmte Attribute (Felder) enthält, werden die Feldeigenschaften für die Erstellung von KML-Daten verwendet. Layer, die ursprünglich mit dem Werkzeug KML in Layer erstellt wurden, verfügen über Attribute, anhand derer definiert wird, wie KML-Daten erstellt werden.
Weitere Informationen zum Erstellen von KML in ArcGIS Desktop
Sie können die Größe des KMZ-Ausgabedokuments reduzieren, wenn die Karte über maßstabsabhängige Anzeigeeigenschaften von Layern verfügt und Sie einen geeigneten Maßstab für die Kartenausgabe wählen.
Alle KML- und KMZ-Dateien werden im WGS84-Koordinatensystem erstellt. Sie müssen sich darauf verlassen können, dass die Layer richtig abgebildet werden, wenn sie sich noch nicht in WGS84 befinden. Sie können das Werkzeug Projizieren verwenden, um die Daten vor KML-Konvertierung neu zu projizieren, wenn für die Projektion eine Transformation erforderlich ist.
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
arcpy.conversion.MapToKML(in_map_document, data_frame, out_kmz_file, {map_output_scale}, {is_composite}, {is_vector_to_raster}, {extent_to_export}, {image_size}, {dpi_of_client}, {ignore_zvalue})
Parameter | Erklärung | Datentyp |
in_map_document | Das Kartendokument, das in KML umgewandelt werden soll. | ArcMap Document |
data_frame | Der Datenrahmen des Kartendokuments, das in KML umgewandelt werden soll. | String |
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 und Google Earth, gelesen werden. | File |
map_output_scale (optional) | Der Maßstab, mit dem jeder Layer in der Karte exportiert wird. Dieser Parameter ist bei Maßstabsabhängigkeit wichtig, z. B. für Layer-Sichtbarkeit oder maßstabsabhängiges Rendering. Wenn ein Layer nicht im Exportmaßstab sichtbar ist, ist er in der erstellten KML-Datei nicht enthalten. Jeder Wert, z. B. 1, kann verwendet werden, wenn es keine Maßstabsabhängigkeiten gibt. Wenn Sie einen Layer exportieren, der als 3D-Vektoren angezeigt werden soll, und der Parameter is_composite auf NO_COMPOSITE festgelegt ist, können Sie diesen Parameter auf jeden Wert setzen, sofern die Features nicht maßstabsabhängig gerendert werden müssen. Es sollten nur numerische Zeichen eingegeben werden. Geben Sie beispielsweise 20000 als Maßstab ein, nicht etwa 1:20000 oder 20.000. | Double |
is_composite (optional) |
| Boolean |
is_vector_to_raster (optional) |
| Boolean |
extent_to_export (optional) | Die geographische Ausdehnung des zu exportierenden Gebiets. Die Grenzen des Ausdehnungsrechtecks sollten als eine durch Leerzeichen getrennte Zeichenfolge in WGS84-Koordinaten angegeben werden, das geographische Koordinaten nach dem Schema links unten rechts oben (xmin, ymin, xmax, ymax) beschreibt. | Extent |
image_size (optional) | Größe des zurückgegebenen Bildes in Pixeln. Definiert die vertikale und horizontale Auflösung eines beliebigen Rasters im KML-Ausgabedokument. Verwenden Sie diesen Parameter mit dem dpi_of_client-Parameter, um die Auflösung des Ausgabebildes zu steuern. | Long |
dpi_of_client (optional) | Definiert die Geräteauflösung eines beliebigen Rasters im KML-Ausgabedokument. Die typische Bildschirmauflösung beträgt 96 dpi. Wenn die Daten in der Karte eine hohe Auflösung unterstützen und dies für das KML erforderlich ist, können Sie den Wert möglicherweise vergrößern. Verwenden Sie diesen Parameter mit dem Parameter Bildgröße, um die Auflösung des Ausgabebildes zu steuern. | Long |
ignore_zvalue (optional) |
| Boolean |
Codebeispiel
MapToKML: Beispiel 1(Python-Fenster)
Das folgende Skript im Python-Fenster veranschaulicht, wie die Funktion "MapToKML" im unmittelbaren Modus verwendet wird.
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.MapToKML_3d("city.mxd", "Layers", "city.kmz", "1")
MapToKML: Beispiel 2 (eigenständiges Skript)
Mit dem folgenden Python-Skript wird veranschaulicht, wie Sie die Funktion MapToKML 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)
Umgebungen
Lizenzinformationen
- Basic: Ja
- Standard: Ja
- Advanced: Ja