Résumé
Cet outil convertit une couche d'entités ou raster en fichier KML contenant une traduction des géométries et de la symbologie Esri. Ce fichier ZIP compressé porte l’extension .kmz et peut être lu par n’importe quel client KML, notamment ArcGIS Earth, ArcGlobe et Google Earth.
Utilisation
Vous pouvez contrôler l'apparence de KML de deux manières différentes :
- Si les propriétés de la couche, telles que le paramètre HTML PopUp (Fiche HTML), l’expression d’affichage et l’alias KMLSnippet sont utilisés, ils le sont également lors de la création du fichier KML.
- Si les propriétés de la couche ne sont pas définies et que la classe d'entités contient certains attributs (champs), les propriétés du champ seront utilisées à la création du fichier KML. Les couches créées à l'origine à l'aide de l'outil KML vers couche présentent des attributs qui définissent la méthode de création du fichier KML.
Pour en savoir plus sur la création de fichiers KML dans ArcGIS Desktop
-
Vous pouvez réduire la taille du document KMZ en sortie si les propriétés d’affichage de la couche dépendent de l’échelle et que vous sélectionnez une échelle en sortie appropriée pour la carte.
Tous les fichiers KML et KMZ sont créés dans le système de coordonnées WGS84. Vous devez être sûr que vos couches se projettent correctement si elles ne se trouvent pas déjà dans WGS84. Vous pouvez utiliser l’outil Projeter pour reprojeter vos données avant la conversion KML si votre projection nécessite une transformation.
Pour générer une seule image raster drapée sur la topographie, utilisez l'option Renvoyer une image composite unique.
Les entités en entrée avec des pièces jointes sont incluses dans le fichier .kmz en sortie. Gardez à l'esprit les conditions suivantes pour les pièces jointes au sein des fichiers .kmz.
- Les pièces jointes peuvent considérablement augmenter la taille des fichiers en sortie.
- Lorsque vous utilisez le fichier KML dans un client KML, les pièces jointes sont disponibles à partir de la fenêtre contextuelle KML.
- Les pièces jointes peuvent être exclues en désactivant le paramètre d'environnement Conserver les pièces jointes avant d'exécuter l'outil.
- Tous les clients KML ne prennent pas en charge l'affichage des pièces jointes de manière uniforme. Certaines applications clientes KML prennent mieux en charge les pièces jointes, telles que les images et les fichiers PDF.
Syntaxe
arcpy.conversion.LayerToKML(layer, out_kmz_file, {layer_output_scale}, {is_composite}, {boundary_box_extent}, {image_size}, {dpi_of_client}, {ignore_zvalue})
Paramètre | Explication | Type de données |
layer | Entité, couche raster ou fichier de couches (.lyr) à convertir au format KML. | Layer |
out_kmz_file | Le fichier KML à écrire. Ce fichier est compressé et présente une extension .kmz. Il peut être lu par n'importe quel client KML, dont ArcGIS Explorer, ArcGlobe, et Google Earth. | File |
layer_output_scale (Facultatif) | L'échelle à laquelle exporter la couche. Ce paramètre est utilisé avec n'importe quelle dépendance d'échelle, comme la visibilité des couches ou le rendu dépendant de l'échelle. Si la couche n'est pas visible à l'échelle d'exportation, elle n'est pas incluse dans le fichier KML créé. N'importe quelle valeur, par exemple 0, peut être utilisée en l'absence de dépendance d'échelle. Lors de l'exportation d'une couche qui sera affichée sous la forme de vecteurs 3D, si le paramètre is_composite est défini sur NO_COMPOSITE, vous pouvez définir ce paramètre sur n'importe quelle valeur, tant que vos entités ne présentent pas de rendu dépendant de l'échelle. Vous ne devez entrer que des caractères numériques, à savoir une échelle de 20000, par exemple et non 1:20000 ou 20 000. | Double |
is_composite (Facultatif) |
| Boolean |
boundary_box_extent (Facultatif) | L'étendue géographique de la surface à exporter. Les limites du rectangle d'emprise doivent être spécifiées en tant que chaîne délimitée par des espaces de coordonnées géographiques WGS84, sous la forme "gauche inférieure et droite supérieure" (xmin, ymin, xmax, ymax). | Extent |
image_size (Facultatif) | Définit la résolution verticale et horizontale lorsque le paramètre Renvoyer une image composite unique est utilisé. Utilisez ce paramètre avec le paramètre PPP pour contrôler la résolution d'image en sortie du raster. | Long |
dpi_of_client (Facultatif) | Définit la résolution de l'appareil pour la sortie KML lorsque le paramètre Renvoyer une image composite unique est utilisé. Utilisez ce paramètre avec le paramètre image_size pour contrôler la résolution d'image en sortie du raster. | Long |
ignore_zvalue (Facultatif) |
| Boolean |
Exemple de code
1er exemple d'utilisation de l'outil LayerToKML (fenêtre Python)
Le script de fenêtre Python ci-dessous illustre l'utilisation de la LayerToKML function in immediate mode.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.LayerToKML_conversion("bldg.lyr", "bldg.kmz")
2e exemple d'utilisation de l'outil LayerToKML (script autonome)
Le script Python ci-dessous illustre l'utilisation de la LayerToKML fonction dans un script autonome.
# Name: LayerToKML Example
# 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
# Set environment settings
arcpy.env.workspace = "C:/data"
# Use the ListFiles method to identify all layer files in workspace
if len(arcpy.ListFiles("*.lyr")) > 0:
for layer in arcpy.ListFiles("*.lyr"):
# Set Local Variables
composite = 'NO_COMPOSITE'
pixels = 2048
dpi = 96
clamped = 'CLAMPED_TO_GROUND'
for scale in range(10000, 30001, 10000):
# Strips the '.lyr' and adds scale + _.kmz
outKML = layer[:4] + str(scale) + "_.kmz"
#Execute LayerToKML
arcpy.LayerToKML_conversion(layer, outKML, scale, composite,
'', pixels, dpi, clamped)
else:
arcpy.AddMessage('There are no layer files in '+arcpy.env.workspace+'.')
Environnements
Informations de licence
- Basic: Oui
- Standard: Oui
- Advanced: Oui