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

Краткая информация

Конвертирует векторные или растровые слои в формат KML (файлы .kmz или .kml). Выходной KML будет содержать перенесенную геометрию объектов Esri, ячейки растров, символы слоев и другие свойства.

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

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

  • Выходные данные инструмента по умолчанию имеют расширение .kmz, которое представляет собой архив или файл .zip, содержащий файл .kml и другие дополнительные файлы. Файл .kmz может быть прочитан многими приложениями, включая ArcGIS Earth и Google Earth.

  • Вы можете управлять внешним видом KML двумя способами:

    • По умолчанию всплывающее окно включает все видимые поля слоя. Отображение всплывающего окна можно задать, используя настраиваемые всплывающие окна слоя. Когда всплывающие окна не настроены, при щелчке по объекту KML во всплывающем окне отображаются значения поля PopupInfo векторного слоя. Эти значения могут быть числовыми или текстовыми атрибутами, а также HTML-кодом, хранящимся в текстовом поле.
    • Если свойства слоя не заданы и класс объектов содержит определенные атрибуты (поля), то свойства полей будут использоваться при создании слоев KML, которые были изначально созданы инструментом KML в слой, включая атрибуты, которые определяют, как именно создавать KML. См. раздел Конвертация KML для получения информации о создании KML по атрибутам.

  • Если у входных данных есть зависящие от масштаба свойства отображения, уменьшите размер выходного файла .kmz, указав соответствующее значение параметра Масштаб выходного слоя.

  • Входной слой будет перепроецирован в WGS84, так как файлы .kml и .kmz должны использовать эту систему координат. Чтобы гарантировать, что в этой проекции пространственные объекты и ячейки растра отображаются корректно, вам может потребоваться указать параметр среды Географическое преобразование. Или можно использовать инструмент Проецировать для предварительного перепроецирования входного слоя в WGS84, с использованием корректного преобразования перед конвертацией в KML.

  • Входные объекты с вложениями будут включены в выходной файл .kmz. Имейте в виду следующие особенности при использовании вложений в файлах .kmz:

    • Вложения существенно увеличивают размер выходного файла.
    • При использовании файлов .kml в клиенте KML, вложения доступны из всплывающих окон KML.
    • Вложения можно исключить, отключив параметр среды Поддерживать вложения перед запуском инструмента.
    • Не все клиенты KML одинаково поддерживают отображение вложений. Некоторые клиентские приложения KML лучше поддерживают вложения таких типов, как изображения и файлы PDF.

    Вложения не будут включены, если выходной файл - .kml.

  • Параметры Выходной масштаб слоя и Размер возвращаемого изображения (пикселы) используются совместно для создания результата в виде листов. Например, для изображения 7000 на 5000 пикселов и параметра Размер возвращаемого изображения (пикселы) со значением 1000 пикселов итоговое изображение будет состоять из 7 x 5 = 35 меньших изображений. Если для значения параметра Выходной масштаб слоя установлено 1, то каждое маленькое изображение будет по размеру 1000 на 1000 пикселов. Если для значения параметра Выходной масштаб слоя установлено 10, то каждое маленькое изображение будет по размеру 100 на 100 пикселов.

  • Описания доменов будут перенесены в выходные данные при включении параметра среды Перенос описаний доменов полей.

Параметры

ПодписьОписаниеТип данных
Входной слой

Векторный, растровый слой или составной слой, который будет конвертироваться в формат KML.

Feature Layer; Raster Layer; Mosaic Layer; Group Layer; Layer File
Выходной файл (KML или KMZ)

Выходной файл .kml или .kmz. На выходе может создаваться файл с расширением .kmz - это создаст архив или заархивированный файл или с расширением .kml (файл базового формата KML). Выходной файл .kmz - по умолчанию.

Выходные файлы .kmz поддерживают растровые слои, символы и другие свойства слоев, вложения и различные расширенные опции. Выходные файлы .kml будут использовать основные символы и свойства KML.

File; Workspace; KML Layer
Масштаб выходного слоя
(Дополнительный)

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

Double
Возвращает одно составное изображение
(Дополнительный)

Указывает, будут ли выходные данные единым составным изображением. Этот параметр применяется только если вы указываете выходной файл KML как файл .kmz, так как выходные файлы .kml не поддерживают наложение изображений или растров на земную поверхность.

  • Отмечено – выходной файл будет одним составным изображением, содержащим растровые или векторные объекты исходного слоя. Растр драпирован на поверхность как GroundOverlay. Выберите эту опцию, чтобы уменьшить размер выходного файла. Если выбрана эта опция, отдельные объекты и слои в файле .kml будут недоступны для выборки. Только выходные файлы .kmz поддерживают изображения.
  • Не отмечено – если входной слой содержит векторные объекты, они сохраняются в виде векторов KML.
Boolean
Экстент
(Дополнительный)

Географический экстент слоя, который будет конвертирован. Только объекты или ячейки растра, расположенные в пределах этого экстента, будут включены в выходной KML.

  • Текущий экстент отображения Вид карты — Экстент будет основан на активной карте или сцене. Эта опция доступна только при наличии активной карты.
  • Нарисовать экстент Закончить прямым углом - экстент будет основан прямоугольнике, нарисованном на карте или сцене. Эта опция создает класс пространственных объектов в базе геоданных проекта и добавляет слой на карту. Класс объектов будет иметь ту же систему координат, что и карта.
    Примечание:

    Данная опция не доступна в диалоговом окне Параметры среды. Он доступен только из параметра инструмента, с экстентом в качестве типа данных, или на вкладке Среды диалогового окна инструмента.

    Примечание:

    Если включена опция Включать и отключать редактирование на вкладке Редактирование, вы должны включить редактирование на вкладке ленты Редактирование, чтобы нарисовать экстент.

  • Экстент слоя Слой — Экстент будет основан на активном слое карты. Используйте раскрывающийся список, чтобы выбрать доступный слой, или используйте опцию Экстент данных во всех слоях, чтобы получить объединенный экстент всех активных слоев карты, за исключением базовой карты. Эта опция доступна только при наличии активной карты со слоями.

    У каждого слоя карте есть следующие опции:

    • Все объекты Выбрать все - экстент всех объектов слоя.
    • Выбранные объектыОбласть из выбранных объектов - экстент всех выбранных объектов слоя.
    • Отображаемые объекты Extent Indicator - экстент всех отображаемых объектов слоя.
      Примечание:

      Экстенты опций Выбранные объекты Область из выбранных объектов и Отображаемые объекты Extent Indicator доступны только для векторных слоев.

  • Обзор Обзор — Экстент будет основан на существующем наборе данных.
  • Буфер обмена Вставить - экстент может быть скопирован в буфер обмена и вставлен из него.
    • Копировать экстент Копировать - копирует координаты экстента и систему координат в буфер обмена.
    • Использовать Вставить экстент Вставить - вставляет координаты экстента и, дополнительно, систему координат из буфера обмена. Если значения буфера обмена не содержат систему координат, экстент будет использовать систему координат карты.
    Примечание:

    Координаты экстента копируются в буфер обмена и вставляются из него с использованием того же форматирования и порядка, что и для объекта ArcPy Extent: x-min, y-min, x-max, y-max и пространственная привязка.

  • Сбросить экстент Сбросить — Экстент будет сброшен до значения по умолчанию.
  • Координаты, введенные вручную – Координаты должны быть числовыми значениями и находиться в системе координат активной карты.
    Внимание:

    На карте могут использоваться единицы отображения, отличные от введенных координат. Использование направления по сторонам света (N, S, E, W) не поддерживается. Используйте знак отрицательного значения для координат юга и запада.

Extent
Размер возвращаемого изображения (пикселы)
(Дополнительный)

Размер листов для растровых слоев, если значение параметра Выходной масштаб слоя больше или равно 1. Этот параметр не влияет на слои, которые не являются растровыми.

Long
DPI выходного изображения
(Дополнительный)

Разрешение устройства для выходных данных KML, если отмечен параметр Возвращает одно составное изображение. Использование этого параметра вместе с параметром Размер возвращаемого изображения (пикселы) для управления разрешением выходного изображения.

Этот параметр не пересчитывает исходные растры. Для входных растров будет сделан снимок и включен в выходной KML в виде файла .png.

Long
Зафиксировать объекты на земле
(Дополнительный)

Указывает, будут ли z-значения входных объектов игнорированы, и все объекты размещаются или фиксируются на поверхности земли.

  • Отмечено — z-значения входных объектов будут игнорированы, и все объекты размещаются или фиксируются на поверхности земли. Если входные данные не содержат z-значений, они всегда фиксируются на поверхности земли. Это значение по умолчанию
  • Не отмечено — z-значения входных объектов будут сохранены в выходном KML. В клиентах KML объекты будут отображаться относительно уровня моря.
Boolean

arcpy.conversion.LayerToKML(layer, out_kmz_file, {layer_output_scale}, {is_composite}, {boundary_box_extent}, {image_size}, {dpi_of_client}, {ignore_zvalue})
ИмяОписаниеТип данных
layer

Векторный, растровый слой или составной слой, который будет конвертироваться в формат KML.

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

Выходной файл .kml или .kmz. На выходе может создаваться файл с расширением .kmz - это создаст архив или заархивированный файл или с расширением .kml (файл базового формата KML). Выходной файл .kmz - по умолчанию.

Выходные файлы .kmz поддерживают растровые слои, символы и другие свойства слоев, вложения и различные расширенные опции. Выходные файлы .kml будут использовать основные символы и свойства KML.

File; Workspace; KML Layer
layer_output_scale
(Дополнительный)

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

Double
is_composite
(Дополнительный)

Указывает, будут ли выходные данные единым составным изображением. Этот параметр применяется только если вы указываете выходной файл KML как файл .kmz, так как выходные файлы .kml не поддерживают наложение изображений или растров на земную поверхность.

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

Географический экстент слоя, который будет конвертирован. Только объекты или ячейки растра, расположенные в пределах этого экстента, будут включены в выходной KML. Экстент можно указать с использованием следующих опций:

  • MAXOF – Будет использоваться максимальный экстент всех входных данных.
  • MINOF – Будет использоваться минимальная область, которая является общей для всех входных данных.
  • DISPLAY — Экстент равен видимому отображению.
  • Имя слоя - будет использоваться тот же экстент, что и в указанном слое.
  • Объект Extent — будет использоваться экстент указанного объекта.
  • Строка координат, разделенных пробелами – будет использоваться экстент из заданной строки. Координаты должны быть выражены в таком порядке: x-min, y-min, x-max, y-max.
Extent
image_size
(Дополнительный)

Размер листов для растровых слоев, если значение параметра layer_output_scale больше или равно 1. Этот параметр не влияет на слои, которые не являются растровыми.

Long
dpi_of_client
(Дополнительный)

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

Этот параметр не пересчитывает исходные растры. Для входных растров будет сделан снимок и включен в выходной KML в виде файла .png.

Long
ignore_zvalue
(Дополнительный)

Указывает, будут ли z-значения входных объектов игнорированы, и все объекты размещаются или фиксируются на поверхности земли.

  • ABSOLUTEz-значения входных объектов будут сохранены в выходном KML. В клиентах KML объекты будут отображаться относительно уровня моря.
  • CLAMPED_TO_GROUNDz-значения входных объектов будут игнорированы, и все объекты размещаются или фиксируются на поверхности земли. Если входные данные не содержат z-значений, они всегда фиксируются на поверхности земли. Это значение по умолчанию
Boolean

Пример кода

LayerToKML, пример 1 (окно Python)

Пример скрипта окна Python для использования функции LayerToKML в режиме прямого запуска.

import arcpy
arcpy.conversion.LayerToKML("buildings", "c:/outputKMZs/bldg.kmz")
LayerToKML, пример 2 (автономный скрипт)

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

# 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):
            # Run LayerToKML
            arcpy.conversion.LayerToKML(layer, outKML, scale, composite, 
                                        '', pixels, dpi, clamped)
else:
    arcpy.AddMessage('There are no layer files in {}'.format(arcpy.env.workspace))

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

  • Basic: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы