Résumé
Cet outil convertit un document ArcMap en fichier KML contenant une traduction des géométries et de la symbologie Esri. Le fichier est compressé avec la compression ZIP, est associé à l’extension .kmz et peut être lu par n’importe quel client KML, notamment ArcGIS Explorer, 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 Fiche HTML, l'expression d'affichage et l'alias KMLSnippet sont utilisés, ils le seront également à 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.
En savoir plus sur la création d’un fichier KML dans ArcGIS Desktop
Vous pouvez réduire la taille du document KMZ en sortie si les propriétés d'affichage de la carte 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.
Pour générer toutes les couches sous forme d'image raster séparée, utilisez l'option Conversion vecteur/raster.
Syntaxe
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})
Paramètre | Explication | Type de données |
in_map_document | La carte à convertir au format KML. | ArcMap Document |
data_frame | Le bloc de données de la carte à convertir au format KML.. | String |
out_kmz_file | Le fichier KML à écrire. Ce fichier est compressé et associé à l'extension .kmz. Il peut être lu par tout client KML, notamment ArcGIS Explorer, ArcGlobe et Google Earth. | File |
map_output_scale (Facultatif) | Echelle à laquelle exporter chaque couche de la carte. Ce paramètre est important pour 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 1, peut être utilisée en l'absence de dépendance d'échelle. Lors de l'exportation d'une couche devant être affichée sous la forme de vecteurs 3D, si le paramètre is_composite est défini sur NO_COMPOSITE, vous pouvez associer ce paramètre à 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 |
is_vector_to_raster (Facultatif) |
| Boolean |
extent_to_export (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 droite supérieure" (xmin, ymin, xmax, ymax). | Extent |
image_size (Facultatif) | Taille de l'image renvoyée en pixels. Définit la résolution verticale et horizontale des rasters du document KML en sortie. Utilisez ce paramètre avec le paramètre dpi_of_client pour contrôler la résolution d'image en sortie. | Long |
dpi_of_client (Facultatif) | Définit la résolution de périphérique des rasters du document KML en sortie. La définition de l'écran standard s'élève à 96 ppp. Si les données de votre carte prennent en charge une haute résolution et si votre fichier KML le nécessite, augmentez cette valeur. Utilisez ce paramètre avec le paramètre Taille d'image 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 MapToKML (fenêtre Python)
Le script de fenêtre Python ci-dessous illustre l'utilisation de la fonction MapToKML en mode immédiat.
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.MapToKML_3d("city.mxd", "Layers", "city.kmz", "1")
2e exemple d'utilisation de l'outil MapToKML (script autonome)
Le script Python ci-dessous illustre l'utilisation de la fonction MapToKML dans un script autonome.
'''*********************************************************************
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)
Environnements
Informations de licence
- Basic: Oui
- Standard: Oui
- Advanced: Oui