Сводка
Конвертирует пространственный объект или растровый слой в файл KML, содержащий перевод геометрии и символов Esri. Этот файл сжимается с помощью сжатия ZIP, имеет расширение .kmz и может быть прочитан любым клиентом KML, включая ArcGIS Earth, ArcGlobe и Google Earth.
Использование
Можно управлять внешним видом KML двумя способами:
- По умолчанию во всплывающем окне отображается информация из всех видимых полей слоя. Отображение всплывающего окна можно задать, используя настраиваемые всплывающие окна слоя. Когда всплывающие окна не содержат пользовательского форматирования, при нажатии объекта KML отображается всплывающее окно, содержащее значения в поле PopupInfo векторного слоя. Эти значения могут представлять собой числовые или текстовые атрибуты, а также сохраненный в текстовом поле HTML-код.
- Если свойства слоя не заданы и класс объектов содержит определенные атрибуты (поля), то свойства полей будут использоваться при создании слоев KML, которые были изначально созданы инструментом KML в слой, включая атрибуты, которые определяют, как именно создавать KML. См. Конвертация в KML и обратно для получения информации о создании KML по атрибутам.
-
Можно уменьшить размер выходного документа KMZ, если слой имеет зависящие от масштаба свойства отображения, и выбран соответствующий масштаб выходных данных карты.
Все файлы KML и KMZ создаются в системе координат WGS84. Если ваши слои еще не находятся в этой системе координат, убедитесь, что они проецируются правильно. Если проекцию нужно преобразовать, можно воспользоваться инструментом Проецировать, чтобы повторно проецировать данные в конвертацию KML.
Для вывода одного растрового изображения, драпированного над топографией, используйте опцию Возвращает одно составное изображение.
Входные объекты с вложениями будут включены в выходной файл .kmz. Имейте в виду следующие особенности при использовании вложений в файлах .kmz:
- Вложения существенно увеличивают размер выходного файла.
- При использовании файлов KML в клиенте KML, вложения доступны из всплывающих окон KML.
- Вложения можно исключить, отключив параметр среды Поддерживать вложения перед запуском инструмента.
- Не все клиенты KML одинаково поддерживают отображение вложений. Некоторые клиентские приложения KML лучше поддерживают вложения таких типов, как изображения и файлы PDF.
Параметры Выходной масштаб слоя и Размер возвращаемого изображения (пикселы) используются совместно для создания результата в виде листов. Например, для изображения 7000 на 5000 пикселов и параметра Размер возвращаемого изображения (пикселы) со значением 1000 пикселов, итоговое изображение будет состоять из 7 x 5 = 35 меньших изображений. Если значение параметра Выходной масштаб слоя задано как 1, то каждое маленькое изображение будет по размеру 1000 на 1000 пикселов. Если значение параметра Выходной масштаб слоя задано как 10, то каждое маленькое изображение будет по размеру 100 на 100 пикселов.
Синтаксис
LayerToKML(layer, out_kmz_file, {layer_output_scale}, {is_composite}, {boundary_box_extent}, {image_size}, {dpi_of_client}, {ignore_zvalue})
Parameter | Объяснение | Тип данных |
layer | Объект, растровый слой или файл слоя (.lyrx), который конвертируется в KML. | Layer |
out_kmz_file | Файл KML, который будет сохранен. Этот файл сжимается и имеет расширение .kmz. Он может быть прочитан любым клиентом KML, включая ArcGIS Earth, ArcGlobe и Google Earth. | File |
layer_output_scale (Дополнительный) | Для растровых слоев можно использовать значение 0, чтобы создать одно выходное изображение, не разбитое на листы. Если используется значение 1 или больше, оно будет определять выходное разрешение растра. Этот параметр не влияет на слои, которые не являются растровыми. | Double |
is_composite (Дополнительный) | Указывает, будут ли выходные данные единым составным изображением.
| Boolean |
boundary_box_extent (Дополнительный) | Географический экстент области, которая будет экспортирована. Укажите границы прямоугольника экстента как строку географических координат WGS84, разделенных пробелами, в формате: левый нижний и правый верхний углы (xmin, ymin, xmax, ymax). | Extent |
image_size (Дополнительный) | Размер листов для растровых слоев, если значение параметра Выходной масштаб слоя задано как 1 или больше. Этот параметр не влияет на слои, которые не являются растровыми. | Long |
dpi_of_client (Дополнительный) | Разрешение устройства для выходных данных KML, если отмечен параметр Возвращает одно составное изображение (is_composite = "COMPOSITE" в Python). Этот параметр используется вместе с параметром Размер возвращаемого изображения (пикселы) (image_size в Python) для управления разрешением выходного изображения. Примечание:Этот параметр не предоставляет возможность пересчета исходных растров. Для всех входных растров будет сделан снимок и включен в выходной KML в виде файла.png. | Long |
ignore_zvalue (Дополнительный) |
| Boolean |
Пример кода
Пример скрипта окна Python для использования функции LayerToKML в режиме прямого запуска.
import arcpy
# "buildings" represents a layer in your Table of Contents
arcpy.LayerToKML_conversion("buildings", "c:/outputKMZs/bldg.kmz")
В следующем скрипте 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):
# Execute LayerToKML arcpy.LayerToKML_conversion(layer, outKML, scale, composite, '', pixels, dpi, clamped)
else:
arcpy.AddMessage('There are no layer files in {}'.format(arcpy.env.workspace))
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да