Слой в KML (Layer To KML) (Конвертация)

Уровень лицензии:BasicStandardAdvanced

Резюме

Этот инструмент конвертирует пространственный векторный или растровый слой в файл KML, содержащий перевод геометрии и символов Esri. Этот файл сжимается с помощью сжатия ZIP, имеет расширение .kmz и может быть прочитан любым клиентом KML, включая ArcGIS Explorer, ArcGlobe и Google Earth.

Подробнее о поддержке KML в ArcGIS

Использование

Синтаксис

LayerToKML_conversion (layer, out_kmz_file, {layer_output_scale}, {is_composite}, {boundary_box_extent}, {image_size}, {dpi_of_client}, {ignore_zvalue})
ПараметрОбъяснениеТип данных
layer

Объект, растровый слой или файл слоя (.lyr), который следует конвертировать в KML.

Layer
out_kmz_file

Файл KML, который будет сохранен. Этот файл сжимается и имеет расширение .kmz. Он может быть прочитан любым клиентом KML, включая ArcGIS Explorer, ArcGlobe и Google Earth.

File
layer_output_scale
(дополнительно)

Масштаб, в котором слой будет экспортирован. Этот параметр используется с любыми видами масштабной зависимости, такими как видимость слоя или масштабно-зависимое отображение. Если слой невидим в экспортируемом масштабе, он не будет включен в создание файла KML. Если масштабной зависимости нет, можно использовать любое значение, например, 0.

Если вы экспортируете слой, который будет отображаться в виде 3D-векторов, а параметр is_composite имеет значение NO_COMPOSITE, этому параметру можно присвоить любое значение в том случае, если у объектов нет определенного масштабно-зависимого отображения.

Следует вводить только числовые значения, например указывая масштаб, введите 20000, а не 1:20000 или 20,000.

Double
is_composite
(дополнительно)
  • COMPOSITEВыходной файл KML будет одним составным изображением, представляющим растровые или векторные объекты в исходном слое. Растр наложен сверху на поверхность как KML GroundOverlay. Выберите эту опцию, чтобы уменьшить размер выходного файла KMZ. Если поставить эту отметку, отдельные объекты и слои в KML будут недоступны для выборки.
  • NO_COMPOSITEЕсли слой содержит векторные объекты, они сохраняются в виде векторов KML. (Если слой является растром, вы можете выбрать любую опцию для этого параметра без каких-либо видимых различий.)
Boolean
boundary_box_extent
(дополнительно)

Географический экстент области, которая будет экспортирована. Пределы прямоугольника экстента должны быть заданы как ограниченная пробелами строка географических координат WGS84 в форме «нижний левый верхний правый» (xmin, ymin, xmax, ymax).

Extent
image_size
(дополнительно)

Определяет вертикальное и горизонтальное разрешение любого растра, входящего в выходной документ KML. Используйте этот параметр с параметром DPI, чтобы контролировать выходное разрешение растра.

Long
dpi_of_client
(дополнительно)

Определяет разрешение устройства для всех растров в выходном документе KML. Используйте этот параметр с параметром Image Size, чтобы контролировать выходное разрешение растра.

Long
ignore_zvalue
(дополнительно)
  • Абсолютные.При создании KML используйте значения Z объектов. Объекты будут отрисованы в клиентах KML относительно уровня моря.
  • CLAMPED_TO_GROUNDПереопределите значения Z в своих объектах и создайте KML с объектами, прикрепленными к земле. Объекты будут драпированы на поверхность. Эта настройка используется для объектов, которые не имеют значений Z. Это значение используется по умолчанию.
Boolean

Пример кода

Пример 1 инструмента Слой в KML (LayerToKML) (окно Python)

Следующий скрипт окна Python демонстрирует, как использовать функцию Слой в KML (LayerToKML) в прямом режиме.

import arcpy

arcpy.env.workspace = "C:/data"
arcpy.LayerToKML_conversion("bldg.lyr", "bldg.kmz")
Пример 2 инструмента Слой в KML (LayerToKML) (автономный скрипт)

Следующий скрипт Python демонстрирует, как использовать функцию Слой в KML (LayerToKML) в автономном скрипте.

# 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.
# Author: ESRI

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'
        # Strips the '.lyr' part of the name and appends '.kmz'
        outKML = file[:4] + ".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 '+env.workspace+'.')

Параметры среды

Связанные темы

Информация о лицензировании

ArcGIS for Desktop Basic: Да
ArcGIS for Desktop Standard: Да
ArcGIS for Desktop Advanced: Да
9/10/2013