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

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

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

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

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

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

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

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

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

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

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

  • Чтобы включить легенду в выходной KML, в виде экранного наложения, укажите значение параметра Источник компоновки легенды. У вас должен быть элемент легенды в компоновке карты.

    Экранными наложениями в KML станут только элементы легенды. Каждая легенда станет подпапкой в основной папке KML при просмотре данных KML.

Параметры

ПодписьОписаниеТип данных
Входная карта

Карта, сцена или базовая карта, которая будет конвертирована в KML.

Map
Выходной файл (KMZ)

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

File
Масштаб выходной карты
(Дополнительный)

Масштаб, в котором будет экспортироваться каждый слой карты.

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

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

Принимаются только числовые символы; например, введите 20000 в качестве масштаба, а не 1:20000. В языках, использующих запятую в качестве разделителя десятичных значений, также можно использовать 20,000.

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

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

Указывает, будет ли выходной KML содержать одно составное изображение или отдельные слои.

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

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

  • Отмечено – векторные слои конвертируются в отдельное растровое изображение в выходном KML. Нормальные растровые слои также добавляются к выходным данным KML. Каждый выходной растровый слой KML доступен для выборки и его прозрачности можно регулировать в конкретных вьюерах KML.
  • Не отмечено — объекты будут сохранены в выходном KML как векторные геометрии. Это значение по умолчанию
Boolean
Экстент
(Дополнительный)

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

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

    На карте могут использоваться разные единицы отображения

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

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

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

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

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

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

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

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

String

arcpy.conversion.MapToKML(in_map, out_kmz_file, {map_output_scale}, {is_composite}, {is_vector_to_raster}, {extent_to_export}, {image_size}, {dpi_of_client}, {ignore_zvalue}, {layout})
ИмяОписаниеТип данных
in_map

Карта, сцена или базовая карта, которая будет конвертирована в KML.

Map
out_kmz_file

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

File
map_output_scale
(Дополнительный)

Масштаб, в котором будет экспортироваться каждый слой карты.

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

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

Принимаются только числовые символы; например, введите 20000 в качестве масштаба, а не 1:20000. В языках, использующих запятую в качестве разделителя десятичных значений, также можно использовать 20,000.

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

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

Указывает, будет ли выходной KML содержать одно составное изображение или отдельные слои.

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

Определяет, будет ли каждый векторный слой на карте преобразован в отдельное растровое изображение или сохранен как векторные объекты. Этот параметр не используется, если для параметра is_composite задано COMPOSITE.

  • VECTOR_TO_IMAGEВекторные слои будут конвертироваться в отдельное растровое изображение в выходном KML. Нормальные растровые слои также добавляются к выходным данным KML. Каждый выходной растровый слой KML доступен для выборки и его прозрачности можно регулировать в конкретных вьюерах KML.
  • VECTOR_TO_VECTORОбъекты будут сохранены в выходном KML как векторные геометрии. Это значение по умолчанию
Boolean
extent_to_export
(Дополнительный)

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

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

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

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

Разрешение устройства для любых растров в выходном документе KML. Обычное разрешение экрана – 96 dpi. Если данные в карте поддерживают высокое разрешение, и для KML оно необходимо, рассмотрите возможность увеличения этого значения. Используйте этот параметр с параметром image_size, чтобы контролировать выходное разрешение растра. Значение, предлагаемое по умолчанию, равно 96.

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

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

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

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

String

Пример кода

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

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

import arcpy
arcpy.conversion.MapToKML("C:/Maps/Cities.mapx", "C:/OutputMaps/Cities.kmz")
MapToKML,пример 2 (автономный скрипт)

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

# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data"

# Use ListFiles to identify all map files in workspace
files = arcpy.ListFiles('*.mapx') 
if len(files) > 0:
    for map_file in files:
        # Set Local Variables
        composite = 'NO_COMPOSITE'
        vector = 'VECTOR_TO_VECTOR'
        pixels = 2048
        dpi = 96
        clamped = 'ABSOLUTE'
        for scale in range(10000, 20000, 30000):
            # Strips the '.mapx' part of the name and appends '.kmz'
            outKML = map_file[:-5]+'.kmz'

            # Run MapToKML	
            arcpy.conversion.MapToKML(map_file, outKML, scale, composite, 
                                      vector, '', pixels, dpi, clamped)
else:
    arcpy.AddMessage('There are no map files (*.mapx) in {}.'.format(arcpy.env.workspace))

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

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

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