Файлы kml что это
KML – это формат файлов, который используется для отображения географических данных в геобраузерах, таких как Google Планета Земля, Google Карты и Google Карты для мобильных устройств. KML создан на основе стандарта XML и использует основанную на тегах структуру с вложенными элементами и атрибутами. Регистр тегов учитывается, поэтому их необходимо указывать точно в той форме, в какой они приведены в Справке по KML, где также указано, какие теги обязательны, а какие – нет. Теги внутри элемента должны располагаться в том порядке, который приведен в Справке.
Если вы никогда не работали с KML, начните с изучения этой страницы и прилагаемых файлов с примерами (SamplesInEarth и SamplesInMaps), чтобы ознакомиться со структурой KML-файла и основными тегами. В первом разделе описаны компоненты, которые можно создать в пользовательском интерфейсе Google Планеты Земля, включая метки, описания, наложения на земную поверхность, пути и многоугольники. Во втором разделе описаны компоненты, для определения которых потребуется текстовый редактор. Текстовый файл, сохраненный с расширением .kml или .kmz, распознается геобраузерами.
Совет. Чтобы получить KML-код компонента из Google Планеты Земля, нажмите на него правой кнопкой мыши в окне 3D-просмотра и выберите "Копировать", а затем вставьте содержание буфера обмена в любой текстовый редактор. Компонент, отображаемый в геобраузере, будет преобразован в KML-код. Рекомендуем попробовать эту функцию в действии.
Все примеры, которые приводятся на этой странице, можно найти в файле KML_Samples. Прежде чем продолжать, загрузите его, чтобы просматривать примеры в интерфейсе Google Планеты Земля.
Наложения на экране
В отличие от наложений на земную поверхность, наложения на экране нельзя создавать в интерфейсе Google Планеты Земля. Примеры можно найти в папке Screen Overlays файла KML_Samples.
В качестве иллюстрации включите папку Absolute Positioning: Top left файла KML_Samples. В левом верхнем углу окна просмотра появится наложение. Ниже показан его KML-код.
Размещение наложения определяется следующим образом: точка изображения, заданная элементом , привязывается к точке на экране, заданной элементом . В данном случае левый верхний угол изображения (0,1) выравнивается по левому верхнему углу экрана.
Просмотрите другие примеры в папке, чтобы лучше понять принцип определения фиксированных изображений и изображений, размер которых меняется в зависимости от размера экрана. Обратите внимание на то, что для большей точности вместо xunits и yunits можно использовать пиксели. Подробные сведения приведены в Справке по KML 2.2.
Способ 3: Global Mapper
Global Mapper – геоинформационное программное обеспечение, которое поддерживает множество картографических, включая KMZ, и графических форматов, что позволяет выполнять функции их редактирования и преобразования.
После запуска Глобал Маппер выбираем пункт «Open Data File(s)» в меню «File».
В Проводнике перемещаемся в каталог с искомым объектом, выделяем его и кликаем на кнопку «Открыть».
Можно еще перетащить файл в окно программы с папки Проводника.
В результате действия загружается информация о местонахождении объекта, которая отображается на карте в виде метки.
Наложения на земную поверхность
Наложения на земную поверхность позволяют "накрыть" рельеф местности определенным изображением. Элемент содержит ссылку на JPG-файл изображения. Ниже приведен пример из файла KML_Samples, показывающий извержение Этны в 2001 году.
Обратите внимание на то, что первые две строки файла точно такие же, как в первом примере: XML-заголовок и декларация пространства имен KML.
Для группировки и обозначения содержания в примере используется папка Ground Overlays. Обратите внимание на то, что она появляется в панели "Метки", как только вы загружаете файл KML_Samples в Google Планету Земля.
Расположение наложения определяется с помощью тега , в котором указываются крайние значения южной и северной широты, а также восточной и западной долготы. Кроме того, если ось y изображения не направлена строго на север, задается значение поворота. В примере используется JPEG-изображение, но Google Планета Земля также поддерживает графические форматы BMP, GIF, TIFF, TGA и PNG.
В Google Планете Земля можно создавать пути разных типов, что позволяет подойти к отображению данных творчески. В KML-коде путь представлен элементом . Изучите пример Absolute Extruded в папке Paths: линия определена с помощью указанного ниже кода.
Обратите внимание на то, что это одна и та же линия, отображаемая на определенной высоте над землей. Благодаря тегу линия разбивается на короткие отрезки, а тег отвечает за ее выравнивание относительно земной поверхности.
Определение точки в центре области просмотра
А так выглядит KML-код сетевой ссылки, которая загружает показанный выше скрипт:
Когда KML-сервер отвечает на запрос Google Планеты Земля (или любого другого геобраузера), должен быть соблюден ряд правил, иначе геобраузер не сможет правильно интерпретировать ответ.
Google Планета Земля поддерживает файлы в форматах KML и KMZ. Для KML-файлов необходимо указать следующий тип MIME:
- application/vnd.google-earth.kml+xml
Для KMZ-файлов необходимо указать следующий тип MIME:
- AddType application/vnd.google-earth.kml+xml .kml
- AddType application/vnd.google-earth.kmz .kmz
Инструкции по настройке типов MIME в службе Microsoft IIS можно найти в документации Microsoft.
Подробные сведения об основных компонентах KML можно найти в Руководстве разработчика, а информацию об отдельных элементах – в Справке по KML.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
KML – это формат файлов, который используется для отображения географических данных в геобраузерах, таких как Google Планета Земля, Google Карты и Google Карты для мобильных устройств. С помощью KML-файлов можно добавлять на карту метки или наложенные изображения и отображать расширенные географические данные. KML является международным стандартом, поддерживаемым организацией Open Geospatial Consortium (OGC).
Для кого предназначен KML?
Сообщество KML весьма разнообразно. Чтобы в этом убедиться, достаточно посетить форум сообщества Google Планеты Земля. Обычные пользователи с помощью KML могут обозначать на карте свои дома, маршруты пеших или велосипедных путешествий. Ученым KML позволяет создавать подробные карты минеральных ресурсов, моделировать вулканические извержения, землетрясения, движение воздушных масс и другие природные явления. Риелторам, архитекторам и специалистам по градоустройству KML помогает представлять планы и строительные проекты. Учащиеся и преподаватели используют KML для проведения демографических исследований, а также наглядной демонстрации исторических и современных мест и событий. Такие организации, как National Geographic, ЮНЕСКО и Смитсоновский институт отображают с помощью KML специализированную информацию.
Как создать KML-файл?
KML-можно создать тремя способами, которые описаны ниже.
- В интерфейсе Google Планеты Земля. Это самый удобный инструмент для создания KML-файлов, позволяющий добавлять следующие компоненты:
- метки;
- пути;
- многоугольники;
- накладываемые изображения;
- сетевые ссылки;
- модели;
- папки с перечисленными выше объектами;
- накладываемые фото.
Создайте один из перечисленных объектов, выберите его в панели "Метки" и нажмите "Копировать". Скопированное содержание затем можно вставить в текстовый редактор или редактор XML.
Существует также множество инструментов, созданных участниками сообщества Google Планеты Земля. Посетите группу поддержки KML-разработчиков.
Как открыть KMZ-файл?
KMZ-файл – это архив, состоящий из одного или нескольких файлов, предназначенных для отображения в Google Планете Земля. Файлы сжимаются в формате ZIP и могут быть распакованы с помощью любого ZIP-архиватора, такого как WinZip, 7-Zip, инструмента Windows XP Compressed Folders Tool (в ОС Windows), Stuffit (в Mac OS) или команды zip (в Mac OS или Linux). Чтобы открыть файлы с помощью ZIP-архиватора, может потребоваться изменить расширение пакета с KMZ на ZIP. Не забудьте снова присвоить файлу расширение KMZ, прежде чем загружать его в геобраузер.
Как создать KML-файл с астрономическими данными?
В KML-файл можно включить астрономические данные для загрузки в Google Небо или Microsoft WorldWide Telescope. Подробные сведения приведены в статье Данные Google Неба в KML.
Какие теги KML поддерживает Google Планета Земля?
Google Планета Земля поддерживает абсолютно все теги, предусмотренные в KML. Их список можно найти в Спецификации KML.
Какие теги KML поддерживают Google Карты?
Google Карты поддерживают некоторые теги KML.
Где найти Руководство разработчика?
Почему исчезают линии?
Если для компонента LineString задано значение высоты clampToGround, он всегда остается на земной поверхности. Если же задано значение relativeToGround, может потребоваться добавить дополнительные точки, поскольку слишком длинные прямые отрезки пересекаются с рельефом местности.
Приведем пример кода для компонента LineString: отрезки определенной им прямой линии будут скрыты под землей.
Если добавить дополнительные точки, под землю будет уходить меньше линий. Чтобы линия копировала рельеф местности, установите для поля значение 1.
Можно ли нарисовать круг в KML?
В KML не предусмотрена геометрия круга, однако с помощью ломаных линий (компонентов LineString) можно создать нечто подобное (см. пример).
Можно ли сделать ломаную линию пунктирной или добавить к ней стрелки?
Как скрыть ярлыки меток?
Ярлыки, отображаемые рядом с метками в Google Планете Земля, задаются с помощью тегов . Если установить для элемента значение 0, ярлык будет скрыт.
Из-за чего возникает ошибка синтаксического анализа?
Ошибки синтаксического анализа обычно возникают по одной из двух причин.
- Неверный регистр. В KML, как и во всех языках на основе XML, различаются строчные и заглавные буквы. Таким образом, все элементы должны быть записаны с учетом регистра: , а не ; , а не ; , а не и т. д.
- Незакрытые теги. Иногда авторы кода забывают закрывать теги или пропускают угловую скобку (< или >).
KML – это язык разметки на основе XML. Проверить правильность XML-кода можно несколькими способами.
Для этих целей используются регионы (компоненты Region). Рекомендуем ознакомиться со следующими ресурсами:
MultiGeometry объединяет несколько геометрических объектов в единую метку (компонент Placemark). Благодаря этому к ним можно применять единый стиль и отображать их как единый объект, например в панели "Места" в Google Планете Земля.
Стили задаются на уровне компонента Placemark с помощью элемента styleUrl или Style. Таким образом, отдельные геометрические объекты внутри метки не могут иметь собственные стили.
Это правило можно обойти, создав отдельный компонент Placemark для каждого геометрического объекта и определив для него собственный стиль. Чтобы элементов не получилось слишком много, объедините их в компонент Folder, определите для него ListStyle и задайте для его элемента listItemType значение checkHideChildren. Все объединенные таким образом компоненты Placemark будут представлены как единый элемент в панели "Места" в Google Планете Земля, и отображать их по отдельности не потребуется.
Можно ли открывать всплывающее окно одновременно с KML-файлом?
В настоящее время открывать всплывающее окно одновременно с KML-файлом нельзя. Однако с помощью привязки компонента можно создать внутри всплывающего окна ссылку, по которой будет открываться другой KML-файл или другое всплывающее окно.
Можно ли оставлять всплывающее окно открытым при обновлении сетевой ссылки?
В настоящее время KML не сохраняет состояние всплывающего окна при обновлении сетевой ссылки.
Можно ли просматривать KML-код, созданный пользователями моего домена?
В настоящее время по сетевым ссылкам нельзя отследить KML-код, создаваемый пользователями в Google Планете Земля или Google Картах. Тем не менее, можно использовать API Google Планеты Земля или API Google Карт в качестве инструмента создания KML-файлов и передавать информацию обратно на сервер (см. пример GeoDataStore).
Можно ли контролировать ползунок времени средствами KML?
Ползунок времени отображается, когда открывается KML-файл, содержащий элемент или . Геобразуер обнаруживает все выбранные элементы и и настраивает на ползунке соответствующие интервалы. В настоящее время в KML не предусмотрены другие способы управления ползунком времени, такие как возможность принудительной установки текущего времени или определенного периода. Подробные сведения о добавлении временных данных приведены в статье Время и анимация.
Как добавить в KML-файлы интерактивные функции? Можно ли использовать HTML-формы во всплывающих окнах с описаниями?
В настоящее время KML в Google Планете Земля поддерживает только функции HTML, служащие для представления содержания; интерактивные функции HTML не поддерживаются. В Google Картах KML позволяет программировать формы.
Однако KML в Google Планете Земля поддерживаются Flash-формы. Чтобы добавить такую форму, вставьте Flash-приложение в HTML-код, который отображается во всплывающем окне с описанием. В Google Картах этот способ не работает.
Можно ли автоматически преобразовать таблицу в KML-файл?
Да. Это можно сделать одним из указанных ниже способов.
- Напишите собственную программу, которая будет анализировать CSV-файл и создавать на его основе KML-код. Вам может быть полезна эта статья.
- Воспользуйтесь онлайн-редактором таблиц. В частности, в рамках Просветительской программы Google Планеты Земля было создано веб-приложение Spreadsheet Mapper, основанное на Google Таблицах.
- Воспользуйтесь одним из инструментов преобразования таблиц Excel в KML-файлы, таким как [link to tek's thread].
- Загрузите файлы в Google Планету Земля Плюс или PRO и сохраните их с расширением KML или KMZ.
Веб-серверу необходимо сообщать, какие файлы он предоставляет. Некоторые браузеры, например Firefox, делают предположения относительно типов файлов. Другие, например Internet Explorer, пользуются настройками типа MIME на веб-сервере.
Если у вас сервер Microsoft Internet Information Server, потребуется выполнить инструкции по ссылкам ниже.
Если у вас собственный веб-сервер, измените его конфигурацию самостоятельно или свяжитесь с поставщиком услуг хостинга и попросите внести соответствующие изменения.
Почему во всплывающем окне написано, что URL изображений могут быть отформатированы неверно?
Подробные сведения о требованиях к структуре KMZ-кода можно найти здесь.
На какое содержание влияют новые правила определения относительных путей?
В настоящее время эти правила влияют только на URL во всплывающих окнах (ссылки в тегах и в элементах ). Однако в будущем в Google Планету Земля могут быть внесены дальнейшие изменения, направленные на повышение стабильности работы, поэтому уже сейчас не рекомендуется использовать родительский каталог в качестве базового URL, к которому привязываются ссылки в KMZ-архиве.
Отправляются ли KML-файлы из "Моих меток" в Google Планете Земля на серверы Google?
Нет. KML-файлы, созданные в интерфейсе Google Планеты Земля или загруженные пользователем, не отправляются в Google. Все данные хранятся и обрабатываются локально.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
KML – это формат файлов, который используется для отображения географических данных в геобраузерах, таких как Google Планета Земля, Google Карты и Google Карты для мобильных устройств. KML создан на основе стандарта XML и использует основанную на тегах структуру с вложенными элементами и атрибутами. Регистр тегов учитывается, поэтому их необходимо указывать точно в той форме, в какой они приведены в Справке по KML, где также указано, какие теги обязательны, а какие – нет. Теги внутри элемента должны располагаться в том порядке, который приведен в Справке.
Если вы никогда не работали с KML, начните с изучения этой страницы и прилагаемых файлов с примерами (SamplesInEarth и SamplesInMaps), чтобы ознакомиться со структурой KML-файла и основными тегами. В первом разделе описаны компоненты, которые можно создать в пользовательском интерфейсе Google Планеты Земля, включая метки, описания, наложения на земную поверхность, пути и многоугольники. Во втором разделе описаны компоненты, для определения которых потребуется текстовый редактор. Текстовый файл, сохраненный с расширением .kml или .kmz, распознается геобраузерами.
Совет. Чтобы получить KML-код компонента из Google Планеты Земля, нажмите на него правой кнопкой мыши в окне 3D-просмотра и выберите "Копировать", а затем вставьте содержание буфера обмена в любой текстовый редактор. Компонент, отображаемый в геобраузере, будет преобразован в KML-код. Рекомендуем попробовать эту функцию в действии.
Все примеры, которые приводятся на этой странице, можно найти в файле KML_Samples. Прежде чем продолжать, загрузите его, чтобы просматривать примеры в интерфейсе Google Планеты Земля.
Стили выделенных значков
Пример Highlighted Icon в папке Styles and Markup демонстрирует, как задать эффект выделения в KML. В документе необходимо определить два стиля: normalPlacemark (для метки в обычном состоянии) и highlightPlacemark (для выделения метки, на которую наведен указатель мыши). В элементе содержатся две пары "ключ-значение", определяющие стиль значка в зависимости от его состояния. Состояния может быть два: обычное и выделенное (при наведении мыши).
Чтобы определить стиль значка при наведении мыши, выполните указанные ниже действия.
Определение точки в центре области просмотра
А так выглядит KML-код сетевой ссылки, которая загружает показанный выше скрипт:
Когда KML-сервер отвечает на запрос Google Планеты Земля (или любого другого геобраузера), должен быть соблюден ряд правил, иначе геобраузер не сможет правильно интерпретировать ответ.
Google Планета Земля поддерживает файлы в форматах KML и KMZ. Для KML-файлов необходимо указать следующий тип MIME:
- application/vnd.google-earth.kml+xml
Для KMZ-файлов необходимо указать следующий тип MIME:
- AddType application/vnd.google-earth.kml+xml .kml
- AddType application/vnd.google-earth.kmz .kmz
Инструкции по настройке типов MIME в службе Microsoft IIS можно найти в документации Microsoft.
Подробные сведения об основных компонентах KML можно найти в Руководстве разработчика, а информацию об отдельных элементах – в Справке по KML.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
KML – это формат файлов, который используется для отображения географических данных в геобраузерах, таких как Google Планета Земля, Google Карты и Google Карты для мобильных устройств. С помощью KML-файлов можно добавлять на карту метки или наложенные изображения и отображать расширенные географические данные. KML является международным стандартом, поддерживаемым организацией Open Geospatial Consortium (OGC).
Для кого предназначен KML?
Сообщество KML весьма разнообразно. Чтобы в этом убедиться, достаточно посетить форум сообщества Google Планеты Земля. Обычные пользователи с помощью KML могут обозначать на карте свои дома, маршруты пеших или велосипедных путешествий. Ученым KML позволяет создавать подробные карты минеральных ресурсов, моделировать вулканические извержения, землетрясения, движение воздушных масс и другие природные явления. Риелторам, архитекторам и специалистам по градоустройству KML помогает представлять планы и строительные проекты. Учащиеся и преподаватели используют KML для проведения демографических исследований, а также наглядной демонстрации исторических и современных мест и событий. Такие организации, как National Geographic, ЮНЕСКО и Смитсоновский институт отображают с помощью KML специализированную информацию.
Как создать KML-файл?
KML-можно создать тремя способами, которые описаны ниже.
- В интерфейсе Google Планеты Земля. Это самый удобный инструмент для создания KML-файлов, позволяющий добавлять следующие компоненты:
- метки;
- пути;
- многоугольники;
- накладываемые изображения;
- сетевые ссылки;
- модели;
- папки с перечисленными выше объектами;
- накладываемые фото.
Создайте один из перечисленных объектов, выберите его в панели "Метки" и нажмите "Копировать". Скопированное содержание затем можно вставить в текстовый редактор или редактор XML.
Существует также множество инструментов, созданных участниками сообщества Google Планеты Земля. Посетите группу поддержки KML-разработчиков.
Как открыть KMZ-файл?
KMZ-файл – это архив, состоящий из одного или нескольких файлов, предназначенных для отображения в Google Планете Земля. Файлы сжимаются в формате ZIP и могут быть распакованы с помощью любого ZIP-архиватора, такого как WinZip, 7-Zip, инструмента Windows XP Compressed Folders Tool (в ОС Windows), Stuffit (в Mac OS) или команды zip (в Mac OS или Linux). Чтобы открыть файлы с помощью ZIP-архиватора, может потребоваться изменить расширение пакета с KMZ на ZIP. Не забудьте снова присвоить файлу расширение KMZ, прежде чем загружать его в геобраузер.
Как создать KML-файл с астрономическими данными?
В KML-файл можно включить астрономические данные для загрузки в Google Небо или Microsoft WorldWide Telescope. Подробные сведения приведены в статье Данные Google Неба в KML.
Какие теги KML поддерживает Google Планета Земля?
Google Планета Земля поддерживает абсолютно все теги, предусмотренные в KML. Их список можно найти в Спецификации KML.
Какие теги KML поддерживают Google Карты?
Google Карты поддерживают некоторые теги KML.
Где найти Руководство разработчика?
Почему исчезают линии?
Если для компонента LineString задано значение высоты clampToGround, он всегда остается на земной поверхности. Если же задано значение relativeToGround, может потребоваться добавить дополнительные точки, поскольку слишком длинные прямые отрезки пересекаются с рельефом местности.
Приведем пример кода для компонента LineString: отрезки определенной им прямой линии будут скрыты под землей.
Если добавить дополнительные точки, под землю будет уходить меньше линий. Чтобы линия копировала рельеф местности, установите для поля значение 1.
Можно ли нарисовать круг в KML?
В KML не предусмотрена геометрия круга, однако с помощью ломаных линий (компонентов LineString) можно создать нечто подобное (см. пример).
Можно ли сделать ломаную линию пунктирной или добавить к ней стрелки?
Как скрыть ярлыки меток?
Ярлыки, отображаемые рядом с метками в Google Планете Земля, задаются с помощью тегов . Если установить для элемента значение 0, ярлык будет скрыт.
Из-за чего возникает ошибка синтаксического анализа?
Ошибки синтаксического анализа обычно возникают по одной из двух причин.
- Неверный регистр. В KML, как и во всех языках на основе XML, различаются строчные и заглавные буквы. Таким образом, все элементы должны быть записаны с учетом регистра: , а не ; , а не ; , а не и т. д.
- Незакрытые теги. Иногда авторы кода забывают закрывать теги или пропускают угловую скобку (< или >).
KML – это язык разметки на основе XML. Проверить правильность XML-кода можно несколькими способами.
Для этих целей используются регионы (компоненты Region). Рекомендуем ознакомиться со следующими ресурсами:
MultiGeometry объединяет несколько геометрических объектов в единую метку (компонент Placemark). Благодаря этому к ним можно применять единый стиль и отображать их как единый объект, например в панели "Места" в Google Планете Земля.
Стили задаются на уровне компонента Placemark с помощью элемента styleUrl или Style. Таким образом, отдельные геометрические объекты внутри метки не могут иметь собственные стили.
Это правило можно обойти, создав отдельный компонент Placemark для каждого геометрического объекта и определив для него собственный стиль. Чтобы элементов не получилось слишком много, объедините их в компонент Folder, определите для него ListStyle и задайте для его элемента listItemType значение checkHideChildren. Все объединенные таким образом компоненты Placemark будут представлены как единый элемент в панели "Места" в Google Планете Земля, и отображать их по отдельности не потребуется.
Можно ли открывать всплывающее окно одновременно с KML-файлом?
В настоящее время открывать всплывающее окно одновременно с KML-файлом нельзя. Однако с помощью привязки компонента можно создать внутри всплывающего окна ссылку, по которой будет открываться другой KML-файл или другое всплывающее окно.
Можно ли оставлять всплывающее окно открытым при обновлении сетевой ссылки?
В настоящее время KML не сохраняет состояние всплывающего окна при обновлении сетевой ссылки.
Можно ли просматривать KML-код, созданный пользователями моего домена?
В настоящее время по сетевым ссылкам нельзя отследить KML-код, создаваемый пользователями в Google Планете Земля или Google Картах. Тем не менее, можно использовать API Google Планеты Земля или API Google Карт в качестве инструмента создания KML-файлов и передавать информацию обратно на сервер (см. пример GeoDataStore).
Можно ли контролировать ползунок времени средствами KML?
Ползунок времени отображается, когда открывается KML-файл, содержащий элемент или . Геобразуер обнаруживает все выбранные элементы и и настраивает на ползунке соответствующие интервалы. В настоящее время в KML не предусмотрены другие способы управления ползунком времени, такие как возможность принудительной установки текущего времени или определенного периода. Подробные сведения о добавлении временных данных приведены в статье Время и анимация.
Как добавить в KML-файлы интерактивные функции? Можно ли использовать HTML-формы во всплывающих окнах с описаниями?
В настоящее время KML в Google Планете Земля поддерживает только функции HTML, служащие для представления содержания; интерактивные функции HTML не поддерживаются. В Google Картах KML позволяет программировать формы.
Однако KML в Google Планете Земля поддерживаются Flash-формы. Чтобы добавить такую форму, вставьте Flash-приложение в HTML-код, который отображается во всплывающем окне с описанием. В Google Картах этот способ не работает.
Можно ли автоматически преобразовать таблицу в KML-файл?
Да. Это можно сделать одним из указанных ниже способов.
- Напишите собственную программу, которая будет анализировать CSV-файл и создавать на его основе KML-код. Вам может быть полезна эта статья.
- Воспользуйтесь онлайн-редактором таблиц. В частности, в рамках Просветительской программы Google Планеты Земля было создано веб-приложение Spreadsheet Mapper, основанное на Google Таблицах.
- Воспользуйтесь одним из инструментов преобразования таблиц Excel в KML-файлы, таким как [link to tek's thread].
- Загрузите файлы в Google Планету Земля Плюс или PRO и сохраните их с расширением KML или KMZ.
Веб-серверу необходимо сообщать, какие файлы он предоставляет. Некоторые браузеры, например Firefox, делают предположения относительно типов файлов. Другие, например Internet Explorer, пользуются настройками типа MIME на веб-сервере.
Если у вас сервер Microsoft Internet Information Server, потребуется выполнить инструкции по ссылкам ниже.
Если у вас собственный веб-сервер, измените его конфигурацию самостоятельно или свяжитесь с поставщиком услуг хостинга и попросите внести соответствующие изменения.
Почему во всплывающем окне написано, что URL изображений могут быть отформатированы неверно?
Подробные сведения о требованиях к структуре KMZ-кода можно найти здесь.
На какое содержание влияют новые правила определения относительных путей?
В настоящее время эти правила влияют только на URL во всплывающих окнах (ссылки в тегах и в элементах ). Однако в будущем в Google Планету Земля могут быть внесены дальнейшие изменения, направленные на повышение стабильности работы, поэтому уже сейчас не рекомендуется использовать родительский каталог в качестве базового URL, к которому привязываются ссылки в KMZ-архиве.
Отправляются ли KML-файлы из "Моих меток" в Google Планете Земля на серверы Google?
Нет. KML-файлы, созданные в интерфейсе Google Планеты Земля или загруженные пользователем, не отправляются в Google. Все данные хранятся и обрабатываются локально.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Файл KMZ содержит геолокационные данные, например метку о местоположении, и в основном используется в картографических приложениях. Часто такой информацией могут обмениваться пользователи по всему миру и поэтому вопрос открытия данного формата является актуальным.
Авторазметка в Google Планете Земля 4.0 и более поздних версий
Дополнительная информация
В Справке по KML 2.2 формат KML описан более подробно. Если вы уже работали с XML-кодом, рекомендуем ознакомиться со схемой KML 2.2.
Инструкции по применению отдельных компонентов KML можно найти в Руководстве разработчика.
Самые простые KML-документы можно создавать прямо в интерфейсе Google Планеты Земля; для этого даже не потребуется текстовый редактор. Таким способом можно создавать и изменять метки, наложения на земную поверхность, пути и многоугольники.
Наложения на земную поверхность
Наложения на земную поверхность позволяют "накрыть" рельеф местности определенным изображением. Элемент содержит ссылку на JPG-файл изображения. Ниже приведен пример из файла KML_Samples, показывающий извержение Этны в 2001 году.
Обратите внимание на то, что первые две строки файла точно такие же, как в первом примере: XML-заголовок и декларация пространства имен KML.
Для группировки и обозначения содержания в примере используется папка Ground Overlays. Обратите внимание на то, что она появляется в панели "Метки", как только вы загружаете файл KML_Samples в Google Планету Земля.
Расположение наложения определяется с помощью тега , в котором указываются крайние значения южной и северной широты, а также восточной и западной долготы. Кроме того, если ось y изображения не направлена строго на север, задается значение поворота. В примере используется JPEG-изображение, но Google Планета Земля также поддерживает графические форматы BMP, GIF, TIFF, TGA и PNG.
В Google Планете Земля можно создавать пути разных типов, что позволяет подойти к отображению данных творчески. В KML-коде путь представлен элементом . Изучите пример Absolute Extruded в папке Paths: линия определена с помощью указанного ниже кода.
Обратите внимание на то, что это одна и та же линия, отображаемая на определенной высоте над землей. Благодаря тегу линия разбивается на короткие отрезки, а тег отвечает за ее выравнивание относительно земной поверхности.
CGI-скрипты для KML
Элемент сетевой ссылки может не только указывать на файлы со статическими данными, но и на динамическое содержание, генерируемое, например, CGI-скриптом на сетевом сервере. При наличии базовых навыков программирования программирования на языках PHP, Python или Perl вы сможете написать скрипт для передачи потоковых данных (или файлов) в формате KML по сетевым ссылкам.
Чтобы передавать KML-код с помощью сетевого CGI-скрипта, должны выполняться два условия.
Ответ должен содержать действительный KML-код. Чем сложнее приложение, тем важнее предусмотреть правильную обработку ошибок.
В примерах ниже используется Python, однако то же самое можно написать на любом другом языке.
Сетевые ссылки
Сетевая ссылка состоит из элемента с гипертекстовой ссылкой , указывающей на загружаемый файл. Элемент может содержать локальную ссылку или абсолютный URL. Таким образом, может служить не только для загрузки файлов из сети.
Элемент может указывать на расположение любого из следующих файлов:
- файла изображения, который используется в стилях значков, наложениях на земную поверхность или наложениях на экране;
- файла модели, которая используется в элементе ;
- KML- или KMZ-файла, загружаемого с помощью сетевой ссылки.
Такой файл может располагаться локально или на удаленном сервере. В самом простом варианте сетевые ссылки помогают разделить крупный KML-файл на несколько меньших файлов на одном и том же компьютере, чтобы с ними было удобнее работать.
До сих пор мы рассматривали только случаи, в которых KML-код передается в Google Планету Земля с локального компьютера. Сетевые ссылки позволяют получать содержание с удаленных серверов и, как правило, используются для предоставления данных большому количеству пользователей. Таким образом, если в содержание необходимо внести изменения, достаточно сделать это в файле источника, и все пользователи автоматически увидят обновленную версию.
Способы
Итак, в данной статье подробно рассмотрим приложения для Windows, которые поддерживают работу с KMZ.
CGI-скрипты для KML
Элемент сетевой ссылки может не только указывать на файлы со статическими данными, но и на динамическое содержание, генерируемое, например, CGI-скриптом на сетевом сервере. При наличии базовых навыков программирования программирования на языках PHP, Python или Perl вы сможете написать скрипт для передачи потоковых данных (или файлов) в формате KML по сетевым ссылкам.
Чтобы передавать KML-код с помощью сетевого CGI-скрипта, должны выполняться два условия.
Ответ должен содержать действительный KML-код. Чем сложнее приложение, тем важнее предусмотреть правильную обработку ошибок.
В примерах ниже используется Python, однако то же самое можно написать на любом другом языке.
Сетевые ссылки
Сетевая ссылка состоит из элемента с гипертекстовой ссылкой , указывающей на загружаемый файл. Элемент может содержать локальную ссылку или абсолютный URL. Таким образом, может служить не только для загрузки файлов из сети.
Элемент может указывать на расположение любого из следующих файлов:
- файла изображения, который используется в стилях значков, наложениях на земную поверхность или наложениях на экране;
- файла модели, которая используется в элементе ;
- KML- или KMZ-файла, загружаемого с помощью сетевой ссылки.
Такой файл может располагаться локально или на удаленном сервере. В самом простом варианте сетевые ссылки помогают разделить крупный KML-файл на несколько меньших файлов на одном и том же компьютере, чтобы с ними было удобнее работать.
До сих пор мы рассматривали только случаи, в которых KML-код передается в Google Планету Земля с локального компьютера. Сетевые ссылки позволяют получать содержание с удаленных серверов и, как правило, используются для предоставления данных большому количеству пользователей. Таким образом, если в содержание необходимо внести изменения, достаточно сделать это в файле источника, и все пользователи автоматически увидят обновленную версию.
Создание случайной метки
Ниже показан скрипт на языке Python, генерирующий случайные значения широты (latitude) и долготы (longitude) и добавляющий их в элемент элемента . При обновлении сетевой ссылки скрипт запускается снова и генерирует KML-код с новыми значениями широты и долготы.
Теперь рассмотрим пример KML-файла с сетевой ссылкой, по которой загружается скрипт Python.
Стили выделенных значков
Пример Highlighted Icon в папке Styles and Markup демонстрирует, как задать эффект выделения в KML. В документе необходимо определить два стиля: normalPlacemark (для метки в обычном состоянии) и highlightPlacemark (для выделения метки, на которую наведен указатель мыши). В элементе содержатся две пары "ключ-значение", определяющие стиль значка в зависимости от его состояния. Состояния может быть два: обычное и выделенное (при наведении мыши).
Чтобы определить стиль значка при наведении мыши, выполните указанные ниже действия.
Способ 1: Google Earth
Google Earth – универсальная картографическая программа, которая содержит снимки со спутника всей поверхности планеты Земля. KMZ является одним из ее основных форматов.
Запускаем приложение и в главном меню кликаем сначала на «Файл», а затем на пункт «Открыть».
Перемещаемся в директорию, где лежит указанный файл, после чего выделяем его и жмем «Открыть».
Можно также просто переместить файл прямо из каталога Windows в область отображения карт.
Так выглядит окно интерфейса Google Earth, где на карте отображается «Метка без названия», свидетельствующая о местоположении объекта:
Многоугольники
С помощью многоугольников можно моделировать здания и другие объекты. Примеры можно найти в папке Polygons файла KML_Samples.
Модель здания Пентагона построена так: внутренний и внешний контуры "вытянуты" вниз к земной поверхности. Ниже показан код.
В этом разделе представлены некоторые элементы KML, которые можно задать только с помощью текстового редактора, такие как общие стили геометрии, выделенные значки меток и наложения на экране. Написание KML-кода вручную требует больше знаний и опыта, чем создание компонентов в интерфейсе Google Планеты Земля, однако немного попрактиковавшись, вы сможете без труда добавлять эти эффекты в KML-файлы.
Описательный HTML в метках
В файле KML_Samples приведены исчерпывающие примеры форматирования текста метки, включая добавление ссылок, изменение размера и стиля шрифта, выравнивание и использование таблиц. Чтобы просмотреть полный список возможностей, скопируйте и вставьте в текстовый редактор пример Descriptive HTML (в папке Styles and Markup).
Метки
Метка является одним из самых часто используемых компонентов в Google Планете Земля. Она служит для указания положения на земной поверхности и представлена значком булавки желтого цвета. В самом простом варианте метка содержит только элемент , который определяет ее положение. Вы также можете указать ее название и персонализированный значок или добавить другие элементы.
Откройте файл KML_Samples в Google Планете Земля и перейдите в папку Placemarks. В ней представлены три типа меток: проcтая, плавающая и выдавленная. Ниже показан KML-код простой метки.
Рассмотрим структуру этого файла.
- Заголовок XML: с него начинается каждый KML-файл. Перед заголовком не должно быть никаких символов или пробелов.
- Декларация пространства имен KML: вторая строка каждого файла формата KML 2.2.
- Объект Placemark, содержащий следующие элементы:
- name – имя, которое используется в качестве ярлыка метки;
- description – описание, которое отображается во всплывающем окне, привязанном к метке;
- Point – координаты, определяющие положение метки на земной поверхности (долгота и широта, иногда также высота).
Если вы не можете найти эту метку на карте, подсказываем: она расположена прямо на 41-м корпусе Google – именно там разрабатывалась Google Планета Земля.
То, что пользователи Google Планеты Земля видят как метку, является элементом с дочерним элементом в формате KML. Это единственный способ отобразить метку с ярлыком в окне 3D-просмотра. По умолчанию метка имеет вид уже знакомой вам желтой булавки. В KML-коде элемент может содержать один или несколько геометрических элементов, таких как ломаные линии (LineString), многоугольники (Polygon) или модели (Model), но только с дочерним элементом может отображаться как метка с ярлыком. Элемент служит для правильного размещения метки на карте, но сам не имеет графического представления.
Использование элемента CDATA
Чтобы добавить стандартный HTML-код в тег , его необходимо заключить в тег CDATA. Если этого не сделать, угловые скобки придется записывать в виде ссылок на объекты, иначе HTML-код будет неправильно анализироваться (например, символ > потребуется писать как >, а символ – как <). Это особенность языка XML в целом, а не только Google Планеты Земля.
Обратите внимание на HTML-разметку с тегами CDATA и без них. Сначала рассмотрим элемент с тегами CDATA.
Теперь посмотрим, как оформляется без тегов CDATA.
Наложения на экране
В отличие от наложений на земную поверхность, наложения на экране нельзя создавать в интерфейсе Google Планеты Земля. Примеры можно найти в папке Screen Overlays файла KML_Samples.
В качестве иллюстрации включите папку Absolute Positioning: Top left файла KML_Samples. В левом верхнем углу окна просмотра появится наложение. Ниже показан его KML-код.
Размещение наложения определяется следующим образом: точка изображения, заданная элементом , привязывается к точке на экране, заданной элементом . В данном случае левый верхний угол изображения (0,1) выравнивается по левому верхнему углу экрана.
Просмотрите другие примеры в папке, чтобы лучше понять принцип определения фиксированных изображений и изображений, размер которых меняется в зависимости от размера экрана. Обратите внимание на то, что для большей точности вместо xunits и yunits можно использовать пиксели. Подробные сведения приведены в Справке по KML 2.2.
Способ 4: ArcGIS Explorer
Приложение является настольной версией геоинформационной платформы ArcGIS Server. KMZ здесь используется для задания координат объекта.
Эксплорер может импортировать формат KMZ по принципу drag-and-drop. Перетаскиваем исходный файл с папки Проводника в область программы.
Как показал обзор, все способы открывают формат KMZ. В то время как Google Earth и Global Mapper лишь отображают местонахождение объекта, SketchUp использует KMZ как дополнение к 3D-модели. В случае с ArcGIS Explorer указанное расширение может применяться для точного определения координат инженерных коммуникаций и объектов земляного кадастра.
Мы рады, что смогли помочь Вам в решении проблемы.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.
Стили геометрии
Вы уже знаете, как создавать компоненты в интерфейсе Google Планеты Земля и как выглядит их KML-код. Наверняка вы обратили внимание на то, что стили играют важную роль при отображении данных. Со временем вам может потребоваться определять собственные стили.
В файле KML_Samples представлено несколько общих стилей, которые определены в начале файла и обозначены идентификаторами. Рекомендуем использовать описательные идентификаторы – так вам будет проще отличать стили друг от друга. Ниже показан пример стиля transBluePoly, который определяет для многоугольников прозрачную голубую заливку и белые границы толщиной 1,5 (белый цвет задан по умолчанию). Этот стиль использован в модели 41-го корпуса Google (в папке Polygons).
Обратите внимание на то, что является дочерним элементом элемента , а не геометрического элемента, к которому он применяется.
Стили геометрии
Вы уже знаете, как создавать компоненты в интерфейсе Google Планеты Земля и как выглядит их KML-код. Наверняка вы обратили внимание на то, что стили играют важную роль при отображении данных. Со временем вам может потребоваться определять собственные стили.
В файле KML_Samples представлено несколько общих стилей, которые определены в начале файла и обозначены идентификаторами. Рекомендуем использовать описательные идентификаторы – так вам будет проще отличать стили друг от друга. Ниже показан пример стиля transBluePoly, который определяет для многоугольников прозрачную голубую заливку и белые границы толщиной 1,5 (белый цвет задан по умолчанию). Этот стиль использован в модели 41-го корпуса Google (в папке Polygons).
Обратите внимание на то, что является дочерним элементом элемента , а не геометрического элемента, к которому он применяется.
Способ 2: Google SketchUp
Google SketchUp – приложение для трехмерного моделирования. Здесь в формате KMZ могут содержаться некоторые данные 3D-модели, что может быть полезно для демонстрации ее вида в реальной местности.
Открываем СкетчАп и для импортирования файла жмем «Import» в «File».
Открывается окно обозревателя, в котором переходим в нужную папку с KMZ. Затем, щелкнув по нему, кликаем «Import».
Открытый план местности в приложении:
Метки
Метка является одним из самых часто используемых компонентов в Google Планете Земля. Она служит для указания положения на земной поверхности и представлена значком булавки желтого цвета. В самом простом варианте метка содержит только элемент , который определяет ее положение. Вы также можете указать ее название и персонализированный значок или добавить другие элементы.
Откройте файл KML_Samples в Google Планете Земля и перейдите в папку Placemarks. В ней представлены три типа меток: проcтая, плавающая и выдавленная. Ниже показан KML-код простой метки.
Рассмотрим структуру этого файла.
- Заголовок XML: с него начинается каждый KML-файл. Перед заголовком не должно быть никаких символов или пробелов.
- Декларация пространства имен KML: вторая строка каждого файла формата KML 2.2.
- Объект Placemark, содержащий следующие элементы:
- name – имя, которое используется в качестве ярлыка метки;
- description – описание, которое отображается во всплывающем окне, привязанном к метке;
- Point – координаты, определяющие положение метки на земной поверхности (долгота и широта, иногда также высота).
Если вы не можете найти эту метку на карте, подсказываем: она расположена прямо на 41-м корпусе Google – именно там разрабатывалась Google Планета Земля.
То, что пользователи Google Планеты Земля видят как метку, является элементом с дочерним элементом в формате KML. Это единственный способ отобразить метку с ярлыком в окне 3D-просмотра. По умолчанию метка имеет вид уже знакомой вам желтой булавки. В KML-коде элемент может содержать один или несколько геометрических элементов, таких как ломаные линии (LineString), многоугольники (Polygon) или модели (Model), но только с дочерним элементом может отображаться как метка с ярлыком. Элемент служит для правильного размещения метки на карте, но сам не имеет графического представления.
Дополнительная информация
В Справке по KML 2.2 формат KML описан более подробно. Если вы уже работали с XML-кодом, рекомендуем ознакомиться со схемой KML 2.2.
Инструкции по применению отдельных компонентов KML можно найти в Руководстве разработчика.
Самые простые KML-документы можно создавать прямо в интерфейсе Google Планеты Земля; для этого даже не потребуется текстовый редактор. Таким способом можно создавать и изменять метки, наложения на земную поверхность, пути и многоугольники.
Авторазметка в Google Планете Земля 4.0 и более поздних версий
Описательный HTML в метках
В файле KML_Samples приведены исчерпывающие примеры форматирования текста метки, включая добавление ссылок, изменение размера и стиля шрифта, выравнивание и использование таблиц. Чтобы просмотреть полный список возможностей, скопируйте и вставьте в текстовый редактор пример Descriptive HTML (в папке Styles and Markup).
Запросы на обновление при просмотре
Стандартная сетевая ссылка работает только в одном направлении: данные поступают с севера в Google Планету Земля. Обновление при просмотре позволяет передавать данные в обоих направлениях, причем Google Планета Земля в определенный момент времени возвращает серверу координаты области просмотра. Это может происходить каждые n секунд, минут или часов либо по истечении определенного времени после того, как область просмотра перестала смещаться. Подробные сведения приведены в разделе Справки по KML 2.2.
Если запрос выполняется в тот момент, когда пользователь рассматривает область Сан-Франциско, координаты могут выглядеть так:
Эту функцию можно использовать для самых разных целей, однако для начала рассмотрим простой пример.
Использование элемента CDATA
Чтобы добавить стандартный HTML-код в тег , его необходимо заключить в тег CDATA. Если этого не сделать, угловые скобки придется записывать в виде ссылок на объекты, иначе HTML-код будет неправильно анализироваться (например, символ > потребуется писать как >, а символ – как <). Это особенность языка XML в целом, а не только Google Планеты Земля.
Обратите внимание на HTML-разметку с тегами CDATA и без них. Сначала рассмотрим элемент с тегами CDATA.
Теперь посмотрим, как оформляется без тегов CDATA.
Многоугольники
С помощью многоугольников можно моделировать здания и другие объекты. Примеры можно найти в папке Polygons файла KML_Samples.
Модель здания Пентагона построена так: внутренний и внешний контуры "вытянуты" вниз к земной поверхности. Ниже показан код.
В этом разделе представлены некоторые элементы KML, которые можно задать только с помощью текстового редактора, такие как общие стили геометрии, выделенные значки меток и наложения на экране. Написание KML-кода вручную требует больше знаний и опыта, чем создание компонентов в интерфейсе Google Планеты Земля, однако немного попрактиковавшись, вы сможете без труда добавлять эти эффекты в KML-файлы.
Создание случайной метки
Ниже показан скрипт на языке Python, генерирующий случайные значения широты (latitude) и долготы (longitude) и добавляющий их в элемент элемента . При обновлении сетевой ссылки скрипт запускается снова и генерирует KML-код с новыми значениями широты и долготы.
Теперь рассмотрим пример KML-файла с сетевой ссылкой, по которой загружается скрипт Python.
Запросы на обновление при просмотре
Стандартная сетевая ссылка работает только в одном направлении: данные поступают с севера в Google Планету Земля. Обновление при просмотре позволяет передавать данные в обоих направлениях, причем Google Планета Земля в определенный момент времени возвращает серверу координаты области просмотра. Это может происходить каждые n секунд, минут или часов либо по истечении определенного времени после того, как область просмотра перестала смещаться. Подробные сведения приведены в разделе Справки по KML 2.2.
Если запрос выполняется в тот момент, когда пользователь рассматривает область Сан-Франциско, координаты могут выглядеть так:
Эту функцию можно использовать для самых разных целей, однако для начала рассмотрим простой пример.
Читайте также: