Layer in KML (Conversion)

Zusammenfassung

Wandelt ein Feature oder einen Raster-Layer in eine KML-Datei um, die eine Übersetzung der Esri Geometrien und Symbolisierung enthält. Diese Datei wird mit ZIP-Komprimierung komprimiert, hat die Erweiterung .kmz und kann von einem KML-Client wie ArcGIS Earth, ArcGlobe 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 der Layer über maßstabsabhängige Anzeigeeigenschaften verfügt und Sie einen geeigneten Maßstab für die Kartenausgabe wählen.

  • Alle KML- und KMZ-Dateien werden im WGS84-Koordinatensystem erstellt. Vergewissern Sie sich, dass die Layer korrekt projiziert 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 Topografie gelegt wird, verwenden Sie den Parameter Einzelnes zusammengesetztes Bild zurückgeben.

  • Eingabe-Features mit Anlagen werden in die Ausgabedatei .kmz einbezogen. Beachten Sie die folgenden Bedingungen für Anlagen in .kmz-Dateien.

    • Anlagen können die Ausgabedatei erheblich vergrößern.
    • Bei Verwendung der KML-Datei in einem KML-Client werden Anlagen über das KML-Pop-up zur Verfügung gestellt.
    • Anlagen können ausgeschlossen werden, indem die Umgebungseinstellung Anlagen beibehalten vor Ausführung des Werkzeugs deaktiviert wird.
    • Die Anzeige von Anlagen wird nicht von allen KML-Clients gleichermaßen unterstützt. Einige KML-Client-Anwendungen bieten eine bessere Unterstützung für Anlagen wie Bilder und PDF-Dokumente.

  • Die Parameter Maßstab für Layer-Ausgabe 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 Layer-Ausgabe 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 Layer-Ausgabe der Wert 10 festgelegt wird, enthält jedes Sub-Bild 100 x 100 Pixel.

Syntax

arcpy.conversion.LayerToKML(layer, out_kmz_file, {layer_output_scale}, {is_composite}, {boundary_box_extent}, {image_size}, {dpi_of_client}, {ignore_zvalue})
ParameterErklärungDatentyp
layer

Das Feature oder der Raster-Layer oder die Layer-Datei (.lyrx), die in KML konvertiert werden soll.

Feature Layer; Raster Layer; Mosaic Layer; Group Layer; Layer File
out_kmz_file

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

File
layer_output_scale
(optional)

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.

Double
is_composite
(optional)

Gibt an, ob die Ausgabe ein einzelnes zusammengesetztes Bild ist. Wenn der Layer ein Raster ist, können Sie eine der beiden Optionen für diesen Parameter auswählen, wobei im Ergebnis kein Unterschied sichtbar ist.

  • COMPOSITEDie ausgegebene KML-Datei ist ein einzelnes zusammengesetztes Bild, das das Raster- oder die Vektor-Features im Quell-Layer darstellt. Das Raster wird als KML-GroundOverlay über ein Terrain gelegt. Verwenden Sie diese Option, wenn Sie die Größe der KMZ-Ausgabedatei reduzieren möchten. Wenn diese Option verwendet wird, können keine einzelnen Features und Layer im KML ausgewählt werden.
  • NO_COMPOSITEWenn der Layer über Vektor-Features verfügt, werden diese als KML-Vektoren beibehalten.
Boolean
boundary_box_extent
(optional)

Die geographische Ausdehnung des zu exportierenden Gebiets. Geben Sie die Grenzen des Ausdehnungsrechtecks als eine durch Leerzeichen getrennte Zeichenfolge in WGS84-Koordinaten, nach dem Schema links unten rechts oben (xmin, ymin, xmax, ymax) 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 layer_output_scale ein Wert größer als oder gleich 1 festgelegt wird. Dieser Parameter hat keine Auswirkungen auf Layer, die keine Raster-Layer sind.

Long
dpi_of_client
(optional)

Die Geräteauflösung für die KML-Ausgabe, wenn der Parameter is_composite auf COMPOSITE festgelegt wurde. Dieser Parameter wird mit dem Parameter image_size verwendet, um die Ausgabe-Bildauflösung zu steuern.

Dieser Parameter ermöglicht kein Resampling von Quell-Rastern. Von allen Eingabe-Rastern wird ein Snapshot erstellt und als einfaches .png-Bild in die KML-Ausgabe eingefügt.

Long
ignore_zvalue
(optional)

Gibt an, ob die Z-Werte der Eingabe-Features ignoriert werden sollen.

  • ABSOLUTEDie Z-Werte der Features werden verwendet. Die Features werden in KML-Clients im Verhältnis zum Meeresspiegel dargestellt.
  • CLAMPED_TO_GROUNDDie Z-Werte der Features werden ignoriert und über das Terrain gelegt. Diese Einstellung wird für Features verwendet, die keine Z-Werte aufweisen. Dies ist die Standardeinstellung.
Boolean

Codebeispiel

LayerToKML – Beispiel 1(Python-Fenster)

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

import arcpy
# "buildings" represents a layer in your map
arcpy.LayerToKML_conversion("buildings", "c:/outputKMZs/bldg.kmz")
LayerToKML – Beispiel 2 (eigenständiges Skript)

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

# Description: The following stand-alone script demonstrates how to find 
#              all layer files 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 LayerToKML tool. import arcpy
arcpy.env.workspace = "C:/data"
# Set Local Variables composite = 'NO_COMPOSITE' pixels = 2048 dpi = 96 clamped = 'CLAMPED_TO_GROUND'
# Use the ListFiles method to identify all lyr and lyrx files in workspace layers = arcpy.ListFiles("*.lyr*") 
if len(layers) > 0:
    for layer in layers:                # Strips the '.lyr(x)' part of the name and appends '.kmz'
        outKML = os.path.join(os.path.splitext(layer), ".kmz")        for scale in range(10000, 30001, 10000):
            # Execute LayerToKML            arcpy.LayerToKML_conversion(layer, outKML, scale, composite,                                         '', pixels, dpi, clamped)
else:
    arcpy.AddMessage('There are no layer files in {}'.format(arcpy.env.workspace))

Lizenzinformationen

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

Verwandte Themen