Подпись | Описание | Тип данных |
Входная карта | Карта, сцена или базовая карта, которая будет конвертирована в KML. | Map |
Выходной файл (KMZ) | Выходной файл KML, который будет сжат и храниться с расширением .kmz. | File |
Масштаб выходной карты (Дополнительный) |
Масштаб, в котором будет экспортироваться каждый слой карты. Этот параметр важен при наличии любых зависимостей от масштаба, таких как видимость слоя или масштабно-зависимое отображение. Если слой не виден в выходном масштабе, он не включается в выходной KML. Если масштабной зависимости нет, можно использовать любое значение, например, 1. Для растровых слоев можно использовать значение 0, чтобы создать одно выходное изображение, не разбитое на листы. Если используется значение, большее или равное 1, то оно определяет выходное разрешение растра. Этот параметр не влияет на слои, которые не являются растровыми. Принимаются только числовые символы; например, введите 20000 в качестве масштаба, а не 1:20000. В языках, использующих запятую в качестве разделителя десятичных значений, также можно использовать 20,000. Если вы экспортируете слой, который должен отображаться в виде 3D-векторов, и отмечен параметр Возвращать одно составное изображение, вы можете задать этому параметру любое значение, при условии, что объекты не имеют масштабозависимого отображения. | Double |
Возвращает одно составное изображение (Дополнительный) | Указывает, будет ли выходной KML содержать одно составное изображение или отдельные слои.
| Boolean |
Конвертировать объекты в изображения (Дополнительный) | Определяет, будет ли каждый векторный слой на карте преобразован в отдельное растровое изображение или сохранен как векторные объекты. Этот параметр не используется, если отмечен параметр Возвращать одно составное изображение.
| Boolean |
Экстент (Дополнительный) | Географический экстент слоя, который будет конвертирован. Только объекты или ячейки растра, расположенные в пределах этого экстента, будут включены в выходной KML.
Если координаты заданы вручную, они должны быть числовыми значениями в системе координат активной карты. На карте могут использоваться единицы отображения, отличные от введенных координат. Используйте знак отрицательного значения для координат юга и запада. | Extent |
Размер возвращаемого изображения (пикселы) (Дополнительный) | Размер листов для растровых слоев, если значение параметра Выходной масштаб карты больше или равно 1. Этот параметр не влияет на слои, которые не являются растровыми. | Long |
DPI выходного изображения (Дополнительный) | Разрешение устройства для любых растров в выходном документе KML. Обычное разрешение экрана – 96 dpi. Если данные в карте поддерживают высокое разрешение, и для KML оно необходимо, рассмотрите возможность увеличения этого значения. Использование этого параметра вместе с параметром Размер возвращаемого изображения (пикселы) для управления разрешением выходного изображения. Значение, предлагаемое по умолчанию, равно 96. | Long |
Зафиксировать объекты на земле (Дополнительный) | Указывает, будут ли z-значения входных объектов игнорированы, и все объекты размещаются или фиксируются на поверхности земли.
| Boolean |
Исходная компоновка легенды (Дополнительный) | Имя компоновки, содержащей элементы легенды, которые будут включены в выходной KML в качестве экранных наложений. | String |
Краткая информация
Конвертирует карту, содержащую векторные или растровые слои в формат KML (файлы .kmz). Выходной KML будет содержать перенесенную геометрию объектов Esri, ячейки растров, символы слоев и другие свойства.
Использование
Выходной файл .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.
Параметры
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 содержать одно составное изображение или отдельные слои.
| Boolean |
is_vector_to_raster (Дополнительный) | Определяет, будет ли каждый векторный слой на карте преобразован в отдельное растровое изображение или сохранен как векторные объекты. Этот параметр не используется, если для параметра is_composite задано COMPOSITE.
| Boolean |
extent_to_export (Дополнительный) | Географический экстент слоя, который будет конвертирован. Только объекты или ячейки растра, расположенные в пределах этого экстента, будут включены в выходной KML. Экстент можно указать с использованием следующих опций:
| Extent |
image_size (Дополнительный) | Размер листов для растровых слоев, если значение параметра map_output_scale больше или равно 1. Этот параметр не влияет на слои, которые не являются растровыми. | Long |
dpi_of_client (Дополнительный) | Разрешение устройства для любых растров в выходном документе KML. Обычное разрешение экрана – 96 dpi. Если данные в карте поддерживают высокое разрешение, и для KML оно необходимо, рассмотрите возможность увеличения этого значения. Используйте этот параметр с параметром image_size, чтобы контролировать выходное разрешение растра. Значение, предлагаемое по умолчанию, равно 96. | Long |
ignore_zvalue (Дополнительный) | Указывает, будут ли z-значения входных объектов игнорированы, и все объекты размещаются или фиксируются на поверхности земли.
| Boolean |
layout (Дополнительный) | Имя компоновки, содержащей элементы легенды, которые будут включены в выходной KML в качестве экранных наложений. | String |
Пример кода
Пример скрипта окна Python для использования функции MapToKML в режиме прямого запуска.
import arcpy
arcpy.conversion.MapToKML("C:/Maps/Cities.mapx", "C:/OutputMaps/Cities.kmz")
Следующий скрипт 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: Да