Краткая информация
Этот инструмент конвертирует векторный или растровый слой в файл KML, содержащий перевод геометрии и символов Esri. Этот файл сжимается с помощью сжатия ZIP, имеет расширение .kmz и может быть прочитан любым клиентом KML, включая ArcGIS Explorer, ArcGlobe и Google Earth.
Использование
Можно управлять внешним видом KML двумя способами.
- Если используются свойства слоя, такие как настройка Всплывающее окно HTML (HTML PopUp), отображаемое выражение и псевдоним для KMLSnippet, они будут применяться и для создания KML.
- Если свойства слоя не заданы и класс объектов содержит определенные атрибуты (поля), свойства поля будут использоваться при создании объектов в KML. Слои, изначально созданы с помощью инструмента KML в слой, содержат атрибуты, определяющие, как будет создаваться KML.
-
Можно уменьшить размер выходного документа KMZ, если слой имеет зависящие от масштаба свойства отображения слоя и выбран соответствующий масштаб выходных данных карты.
Все файлы KML/KMZ создаются в системе координат WGS84. Если ваши слои еще не находятся в этой системе координат, убедитесь, что они проецируются правильно. Если проекцию нужно преобразовать, можно воспользоваться инструментом Проецировать (Project), чтобы перепроецировать данные перед конвертацией в KML.
Для вывода одного растрового изображения, драпированного над топографией, используйте опцию Возвращает одно составное изображение.
Синтаксис
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 (дополнительно) |
| Boolean |
boundary_box_extent (дополнительно) | Географический экстент области, которая будет экспортирована. Пределы прямоугольника экстента должны быть заданы как строка географических координат WGS84, разделенных пробелами, в формате: левый, нижний, правый, верхний (xmin, ymin, xmax, ymax). | Extent |
image_size (дополнительно) | Определяет вертикальное и горизонтальное разрешение любого растра, входящего в выходной документ KML. Используйте этот параметр с параметром DPI, чтобы контролировать выходное разрешение растра. | Long |
dpi_of_client (дополнительно) | Определяет разрешение устройства для всех растров в выходном документе KML. Используйте этот параметр с параметром Image Size, чтобы контролировать выходное разрешение растра. | Long |
ignore_zvalue (дополнительно) |
| Boolean |
Пример кода
LayerToKML, пример 1 (окно Python)
Пример скрипта окна Python для использовании функции Слой в KML (LayerToKML) в режиме прямого запуска.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.LayerToKML_conversion("bldg.lyr", "bldg.kmz")
LayerToKML, пример 2 (автономный скрипт)
Пример скрипта окна Python для использования функции 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.
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'
for scale in range(10000, 30001, 10000):
# Strips the '.lyr' and adds scale + _.kmz
outKML = layer[:4] + str(scale) + "_.kmz"
#Execute LayerToKML
arcpy.LayerToKML_conversion(layer, outKML, scale, composite,
'', pixels, dpi, clamped)
else:
arcpy.AddMessage('There are no layer files in '+arcpy.env.workspace+'.')
Параметры среды
Информация о лицензировании
- ArcGIS for Desktop Basic: Да
- ArcGIS for Desktop Standard: Да
- ArcGIS for Desktop Advanced: Да