Karte in KML (Conversion)

Zusammenfassung

Konvertiert eine Karte in eine KML-Datei, die Geometrien und Symbolisierung enthält. Die Ausgabedatei wird mit ZIP-Komprimierung komprimiert, hat die Erweiterung .kmz und kann von einem KML-Client wie ArcGIS Earth und Google Earth gelesen werden.

Weitere Informationen zur KML-Unterstützung in ArcGIS

Verwendung

  • Es gibt folgende zwei Möglichkeiten zum Steuern der Darstellung von KML-Daten:

    • Die Pop-up-Anzeige setzt sich standardmäßig aus allen sichtbaren Feldern des Layers zusammen. Pop-up-Anzeigen können auch mit den HTML-Pop-up-Eigenschaften des Layers festgelegt werden. Wenn die Layer-Pop-ups nicht angepasst wurden, werden die Werte im Feld PopupInfo des Feature-Layers im Pop-up angezeigt, wenn auf ein KML-Feature geklickt wird. Bei diesen Werten kann es sich um Zahlen oder Textattribute oder auch HTML-Code handeln, der in einem Textfeld gespeichert ist.
    • Wenn keine Layer-Eigenschaften festgelegt wurden und die Feature-Class bestimmte Attribute (Felder) enthält, werden die Feldeigenschaften bei der Erstellung der ursprünglich mit dem Werkzeug KML in Layer erstellten KML-Layer verwendet. Diese enthalten Attribute, die definieren, wie KML erstellt wird. Weitere Informationen zum Erstellen von KML aus Attributen finden Sie unter KML-Konvertierung.

  • 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. Stellen Sie sicher, dass die Layer korrekt projiziert werden, wenn sie sich 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 Topografie gelegt wird, verwenden Sie den Parameter Einzelnes zusammengesetztes Bild zurückgeben.

  • Wenn Sie jeden Layer als separates Rasterbild ausgeben möchten, verwenden Sie den Parameter Vektor in Raster konvertieren.

  • Die Parameter Maßstab für Kartenausgabe und Größe des zurückgegebenen Bildes (Pixel) werden gemeinsam verwendet, um eine gekachelte Ausgabe zu erstellen. Bei einem Bild mit einer Größe von 7.000 x 5.000 Pixeln und einem Wert von 1.000 Pixeln für den Parameter Größe des zurückgegebenen Bildes (Pixel) etwa besteht das Ausgabebild aus 7 x 5 bzw. 35 Sub-Bildern. Wenn für den Parameter Maßstab für Kartenausgabe der Wert 1 festgelegt wird, enthält jedes Sub-Bild 1.000 x 1.000 Pixel. Wenn für den Parameter Maßstab für Kartenausgabe der Wert 10 festgelegt wird, enthält jedes Sub-Bild 100 x 100 Pixel.

Syntax

arcpy.conversion.MapToKML(in_map, out_kmz_file, {map_output_scale}, {is_composite}, {is_vector_to_raster}, {extent_to_export}, {image_size}, {dpi_of_client}, {ignore_zvalue})
ParameterErklärungDatentyp
in_map

Die Karte, Szene oder Grundkarte, die in KML konvertiert werden soll.

Map
out_kmz_file

Die KML-Ausgabedatei. Diese Datei wird komprimiert und verfügt über die Erweiterung .kmz. Die Datei kann von einem beliebigen KML-Client gelesen werden, wie ArcGIS Earthund Google Earth.

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 der Layer im Ausgabemaßstab nicht sichtbar ist, wird er nicht in die Ausgabe-KML eingeschlossen. Jeder Wert, z. B. 1, kann verwendet werden, wenn es keine Maßstabsabhängigkeiten gibt.

Bei Raster-Layern kann der Wert 0 angegeben werden, um ein ungekacheltes Ausgabebild zu erstellen. Wenn ein Wert größer als oder gleich 1 verwendet wird, bestimmt dieser die Ausgabeauflösung des Rasters. Dieser Parameter hat keine Auswirkungen auf Layer, die keine Raster-Layer sind.

Es werden nur numerische Zeichen akzeptiert. Geben Sie beispielsweise 20000 und nicht 1:20000 als Maßstab ein. In Sprachen, in denen Kommas als Dezimaltrennzeichen verwendet werden, ist auch 20,000 zulässig.

Wenn Sie einen Layer exportieren, der als 3D-Vektoren angezeigt werden soll, und der Parameter is_composite auf NO_COMPOSITE eingestellt ist, können Sie diesen Parameter auf jeden Wert setzen, sofern die Features nicht maßstabsabhängig gerendert werden müssen.

Double
is_composite
(optional)

Gibt an, ob die Ausgabe-KML ein einzelnes zusammengesetztes Bild oder separate Layer enthält.

  • COMPOSITEDie Ausgabe-KML enthält nur ein einzelnes Bild, das alle Features in der Karte in einem Rasterbild zusammenfasst. Das Raster wird als KML-GroundOverlay über ein Terrain gelegt. Diese Option reduziert die Größe der KML-Ausgabedatei. Wenn Sie diese Option auswählen, sind einzelne Features und Layer im KML nicht wählbar.
  • NO_COMPOSITEDie KML enthält separate, einzelne Layer. Dies ist die Standardeinstellung. Ob die Layer als Raster oder als Kombination aus Vektoren und Rastern zurückgegeben werden, wird vom Parameter is_vector_to_raster bestimmt.
Boolean
is_vector_to_raster
(optional)

Gibt an, ob jeder Vektor-Layer in der Karte in ein separates Rasterbild konvertiert wird oder als Vektor-Layer beibehalten wird.

Dieser Parameter ist deaktiviert, wenn der Parameter is_composite auf COMPOSITE festgelegt ist.

  • VECTOR_TO_IMAGEVektor-Layer werden in der KML-Ausgabe in ein separates Raster-Bild konvertiert. Der KML-Ausgabe werden auch normale Raster-Layer hinzugefügt. Jedes KML-Ausgabe-Raster ist auswählbar und seine Transparenz kann bestimmten KML-Clients angepasst werden.
  • VECTOR_TO_VECTORVektor-Layer werden als KML-Vektoren beibehalten. Dies ist die Standardeinstellung.
Boolean
extent_to_export
(optional)

Die geographische Ausdehnung des zu exportierenden Gebiets. Die Grenzen des Ausdehnungsrechtecks werden als eine durch Leerzeichen getrennte Zeichenfolge in WGS84-Koordinaten angegeben, nach dem Schema links unten rechts oben (x-min, y-min, x-max, y-max) an.

  • MAXOF: Die maximale Ausdehnung aller Eingaben wird verwendet.
  • MINOF: Die kleinste gemeinsame Fläche aller Eingaben wird verwendet.
  • DISPLAY: Die Ausdehnung entspricht der sichtbaren Anzeige.
  • Layer-Name: Die Ausdehnung des angegebenen Layers wird verwendet.
  • Extent-Objekt: Die Ausdehnung des angegebenen Objekts wird verwendet.
  • Durch Leerzeichen getrennte Koordinatenzeichenfolge: Die Ausdehnung der angegebenen Zeichenfolge wird verwendet. Die Koordinaten werden in der Reihenfolge X-Min, Y-Min, X-Max, Y-Max ausgedrückt.
Extent
image_size
(optional)

Die Größe der Kacheln für Raster-Layer, wenn für den Parameter Maßstab für Kartenausgabe ein Wert größer als oder gleich 1 festgelegt wird. Dieser Parameter wirkt sich nur auf Raster-Layer aus.

Long
dpi_of_client
(optional)

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 Größe des zurückgegebenen Bildes (Pixel), um die Auflösung des Ausgabebildes zu steuern. Der Standardwert ist 96.

Long
ignore_zvalue
(optional)

Gibt an, ob Features am Boden fixiert werden.

  • CLAMPED_TO_GROUND Die Z-Werte der Features werden ignoriert, und die KML wird erstellt, wobei Features am Boden fixiert werden. Die Features werden über ein Terrain gelegt. Diese Einstellung wird für Features verwendet, die keine Z-Werte aufweisen. Dies ist die Standardeinstellung.
  • ABSOLUTEBeim Erstellen der KML werden die Z-Werte der Eingabe-Features verwendet. Die Features werden in KML-Clients im Verhältnis zum Meeresspiegel dargestellt.
Boolean

Codebeispiel

MapToKML: Beispiel 1(Python-Fenster)

Das folgende Skript für das Python-Fenster veranschaulicht, wie die Funktion MapToKML im unmittelbaren Modus verwendet wird.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.MapToKML_conversion("cities.mapx", "cities.kmz")
MapToKML: Beispiel 2 (eigenständiges Skript)

Das folgende Python-Skript veranschaulicht die Verwendung der Funktion MapToKML in einem eigenständigen Skript.

# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data"
# Use ListFiles to identify all map files in workspace
files = arcpy.ListFiles('*.mapx') 
if len(files) > 0:
    for map_file in files:
        # Set Local Variables
        composite = 'NO_COMPOSITE'
        vector = 'VECTOR_TO_VECTOR'
        pixels = 2048
        dpi = 96
        clamped = 'ABSOLUTE'
        for scale in range(10000, 20000, 30000):
            # Strips the '.mapx' part of the name and appends '.kmz'
            outKML = map_file[:-5]+'.kmz'
            #Execute MapToKML	
            arcpy.MapToKML_conversion(map_file, outKML, scale, composite, 
                                      vector, '', pixels, dpi, clamped)
else:
    arcpy.AddMessage('There are no map files (*.mapx) in {}'.format(arcpy.env.workspace))

Umgebungen

Dieses Werkzeug verwendet keine Geoverarbeitungsumgebungen.

Lizenzinformationen

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

Verwandte Themen