Краткая информация
Этот инструмент конвертирует векторный или растровый слой в файл KML, содержащий перевод геометрии и символов Esri.Этот файл сжимается с помощью сжатия ZIP, имеет расширение .kmz и может быть прочитан любым клиентом KML, включая ArcGIS Explorer, ArcGlobe и Google Earth.
Использование
Можно управлять внешним видом KML двумя способами.
- Если используются такие свойства слоя, как Всплывающее окно HTML, отображаемое выражение и псевдоним для KMLSnippet, они будут использоваться и для создания KML.
- Если свойства слоя не заданы, и класс объектов содержит определенные атрибуты (поля), при создании объектов в KML будут использоваться свойства полей.Слои, изначально созданы с помощью инструмента KML в слой, содержат атрибуты, определяющие, как будет создаваться KML.
-
Можно уменьшить размер выходного документа KMZ, если слой имеет зависящие от масштаба свойства отображения слоя и выбран соответствующий масштаб выходных данных карты.
Все файлы KML и KMZ создаются в системе координат WGS84. Если ваши слои еще не находятся в этой системе координат, убедитесь, что они проецируются правильно. Если проекцию нужно преобразовать, можно воспользоваться инструментом Проецировать, чтобы повторно проецировать данные в конвертацию 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 показано, как использовать функцию 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 Desktop Basic: Да
- ArcGIS Desktop Standard: Да
- ArcGIS Desktop Advanced: Да