KML: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[непроверенная версия][отпатрулированная версия]
Содержимое удалено Содержимое добавлено
м Ссылки: c латинская
Keyhole Earth Viewer - старое название Google Earth, я не вижу прямой связи с военными спутниками
 
(не показана 21 промежуточная версия 15 участников)
Строка 3: Строка 3:
| icon =
| icon =
| screenshot =
| screenshot =
| extension = <tt>.kml</tt>, <tt>.kmz</tt>
| mime = application/vnd.google-earth.kml+xml, application/vnd.google-earth.kmz
| owner = [[Keyhole, Inc]], [[Google]]
| creatorcode =
| creatorcode =
| genre = [[Геоинформационная система]]
| genre = [[Геоинформационная система]]
| container for =
| container for =
| contained by =
| contained by =
| extended from = [[XML]]
| extended to =
| extended to =
}}
}}
{{TOCright}}
{{TOCright}}
'''KML''' (от {{lang-en|Keyhole Markup Language}} — язык разметки [[KeyHole|Keyhole]]<!--Просьба уточнить, какая Keyhole.-->) — [[язык разметки]] на основе [[XML]] для представления трёхмерных [[Геоинформационные системы|геопространственных данных]] в программе «''[[Google Планета Земля]]''» («Keyhole» до её приобретения ''«[[Google (компания)|Google]]»'').
'''KML''' (от {{lang-en|Keyhole Markup Language}} — язык разметки Keyhole) — [[язык разметки]] на основе [[XML]] для представления трёхмерных [[Геоинформационная система|геопространственных данных]] в программе ''[[Google Планета Земля]]'' («Keyhole» до её приобретения [[Google (компания)|Google]]).


Подмножество языка KML 2.0 может использоваться и для отображения двухмерных карт в сервисе «''[[Карты Google]]''».<ref>[http://Econym.Org.UK/gmap/KML.htm Sending KML files to Google Maps]</ref>
Подмножество языка KML 2.0 может использоваться и для отображения двухмерных карт в сервисе [[Карты Google|Google Карты]]<ref>{{Cite web |url=http://econym.org.uk/gmap/KML.htm |title=Sending KML files to Google Maps |access-date=2022-05-11 |archive-date=2022-03-31 |archive-url=https://web.archive.org/web/20220331005254/http://econym.org.uk/gmap/kml.htm |deadlink=no }}</ref>.


KML-файлы обычно распространяются в [[ZIP]]-архиве: KMZ<br />
KML-файлы обычно распространяются в [[ZIP]]-архиве: KMZ<br>
[[MIME]]-тип KML-файлов: application/vnd.google-earth.kml+xml<ref>[http://Earth.Google.Com/support/bin/answer.py?answer=25094&query=mime_type&topic=&type=f Google Earth Help Center]</ref><br />
[[MIME]]-тип KML-файлов: application/vnd.google-earth.kml+xml<ref>[http://Earth.Google.Com/support/bin/answer.py?answer=25094&query=mime_type&topic=&type=f Google Earth Help Center] {{webarchive|url=https://web.archive.org/web/20071024171416/http://earth.google.com/support/bin/answer.py?answer=25094 |date=2007-10-24 }}</ref><br>
MIME-тип KMZ-файлов: application/vnd.google-earth.kmz
MIME-тип KMZ-файлов: application/vnd.google-earth.kmz


== Содержание файлов ==
== Содержание файлов ==
KML-файл определяет один или несколько [[объект]]ов для отображения в Google Earth. Этими объектами могут быть:
KML-файл определяет один или несколько объектов для отображения в Google Earth. Этими объектами могут быть:
* '''Пометки на карте.''' Задаётся значок, отображаемый в некотором месте на карте, и его относительная величина, а также текст и цвет и величина надписи, отображаемой возле значка. Есть возможность создать пометку без значка. Например, поставить номера домов района. Для этого нужно просто в стиле создать пустую ссылку на значок: <pre><nowiki><Icon><href></href></Icon></nowiki></pre>
* '''Пометки на карте.''' Задаётся значок, отображаемый в некотором месте на карте, и его относительная величина, а также текст и цвет и величина надписи, отображаемой возле значка. Есть возможность создать пометку без значка. Например, поставить номера домов района. Для этого нужно просто в стиле создать пустую ссылку на значок: <pre><nowiki><Icon><href></href></Icon></nowiki></pre>
* '''Многоугольник''' или '''набор линий.''' Определяется [[цвет]] линий и цвет подписи.
* '''Многоугольник''' или '''набор линий.''' Определяется цвет линий и цвет подписи.
* '''Изображение.''' Определяется положение изображения на поверхности Земли, а также его [[масштаб]]. Также можно разместить изображение на экране, не перемещающееся вместе с [[Карта|картой]] — например, [[логотип]].
* '''Изображение.''' Определяется положение изображения на поверхности Земли, а также его [[масштаб]]. Также можно разместить изображение на экране, не перемещающееся вместе с картой — например, [[логотип]].
* '''Трёхмерная модель.''' Версия языка KML 2.1 (которая соответствует четвёртой версии программы Google Earth) позволяет подключать описание трёхмерных объектов (например, [[Здание|зданий]] и [[Сооружение|сооружений]]). Трёхмерную [[модель]] можно задать двумя способами: заданием [[Высота|высоты]] плоских [[Фигура|фигур]] (вытягиванием) и ссылкой на полноценную модель в формате [[Collada]].
* '''Трёхмерная модель.''' Версия языка KML 2.1 (которая соответствует четвёртой версии программы Google Earth) позволяет подключать описание трёхмерных объектов (например, зданий и сооружений). Трёхмерную [[модель]] можно задать двумя способами: заданием [[Высота|высоты]] плоских фигур (вытягиванием) и ссылкой на полноценную модель в формате [[Collada]].


Кроме упомянутых характеристик, для каждого объекта также задаются основные [[Геоинформационные системы|геоинформационные]] [[свойства]] (географическая [[широта]] и [[долгота]], а также высота либо [[Высота над уровнем моря|над уровнем моря,]] либо над уровнем поверхности Земли). Может быть приведено краткое описание объекта (которое в дальнейшем отображается во всплывающей подсказке по запросу пользователя). Может быть указан рекомендуемый [[ракурс]] наблюдения отмеченного на карте места, то есть рекомендуемая высота, [[азимут]] и угол наклона «виртуальной камеры».
Кроме упомянутых характеристик, для каждого объекта также задаются основные [[Геоинформационные системы|геоинформационные]] [[свойства]] (географическая [[широта]] и [[долгота]], а также высота либо [[Высота над уровнем моря|над уровнем моря]], либо над уровнем поверхности Земли). Может быть приведено краткое описание объекта (которое в дальнейшем отображается во всплывающей подсказке по запросу пользователя). Может быть указан рекомендуемый [[ракурс]] наблюдения отмеченного на карте места, то есть рекомендуемая высота, [[азимут]] и угол наклона «виртуальной камеры».


Объекты внутри KML-файла можно организовать в иерархические структуры папок и подпапок, чтобы было удобнее совместно включать и отключать отображение логически взаимосвязанных групп объектов.
Объекты внутри KML-файла можно организовать в иерархические структуры папок и подпапок, чтобы было удобнее совместно включать и отключать отображение логически взаимосвязанных групп объектов.


KML-файл может содержать (в [[URL]]-форме) [[Ссылка|ссылки]] на другие файлы в формате KML или KMZ, расположенные где-либо в [[Интернет|Сети]], и задавать условия и регулярность загрузки и отображения данных из этих внешних источников. Такая сетевая ссылка также видна в качестве своеобразной подпапки.
KML-файл может содержать (в [[URL]]-форме) ссылки на другие файлы в формате KML или KMZ, расположенные где-либо в [[Интернет|Сети]], и задавать условия и регулярность загрузки и отображения данных из этих внешних источников. Такая сетевая ссылка также видна в качестве своеобразной подпапки.


Язык KML во многом следует структуре языка [[Geography Markup Language|GML]] — географического языка разметки.<ref>[http://geoweb.blog.com/313918/ GML and KML Syntax]. September 07, 2005</ref>
Язык KML во многом следует структуре языка [[Geography Markup Language|GML]] — географического языка разметки<ref>[http://geoweb.blog.com/313918/ GML and KML Syntax] {{Wayback|url=http://geoweb.blog.com/313918/ |date=20080723114629 }}. September 07, 2005</ref>.


== Пример KML-разметки ==
== Пример KML-разметки ==
Строка 84: Строка 80:


== Ссылки ==
== Ссылки ==
{{колонки|2}}
<div style="-moz-column-count:2; column-count:2;">
* [http://Code.Google.Com/intl/ru_ALL/apis/kml/ Документация Google Планета Земля по языку KML]
* [https://developers.google.com/kml/documentation/kmlreference Документация Google Планета Земля по языку KML]
* [http://Code.Google.Com/intl/ru_ALL/apis/kml/documentation/ Пособие Google Планета Земля по языку KML]
* [https://developers.google.com/kml/documentation/kml_tut Пособие Google Планета Земля по языку KML]
<!-- ne rabotaet
<!-- ne rabotaet
* {{placemark|http://Gearth.ru|Блог интересных достопримечательностей в Картах Google и Google Планета Земля}}{{ref-ru}}
* {{placemark|http://Gearth.ru|Блог интересных достопримечательностей в Картах Google и Google Планета Земля}}{{ref-ru}}
Строка 99: Строка 95:
* [http://www.martwebstudio.net/resources.php?prog=georss2gearth конвертор из Google Планета Земля в KML]{{ref-en}}
* [http://www.martwebstudio.net/resources.php?prog=georss2gearth конвертор из Google Планета Земля в KML]{{ref-en}}
-->
-->
* [http://ArchicadWiki.Com/Google_Earth_Connectivity_Add-on Средство взаимодействия с Google Планета Земля]{{ref-en}} для [[ArchiCAD]]
* [https://web.archive.org/web/20080725134525/http://www.archicadwiki.com/Google_Earth_Connectivity_Add-on Средство взаимодействия с Google Планета Земля]{{ref-en}} для [[ArchiCAD]]
* [http://WorldWindCentral.Com/wiki/Add-on:KMLImporter KMLImporter]{{ref-en}} — средство для импорта данных из KML-файлов в программу [[NASA World Wind]]
* [http://WorldWindCentral.Com/wiki/Add-on:KMLImporter KMLImporter]{{ref-en}} — средство для импорта данных из KML-файлов в программу [[NASA World Wind]]
* [http://vacationworld.googlepages.com/files Ссылки Google Планета Земля (необходимо приложение Google Планета Земля)]
* [http://vacationworld.googlepages.com/files Ссылки Google Планета Земля (необходимо приложение Google Планета Земля)]
</div>
* [http://KMLer.GeoBlogSpot.Com/ KMLer] — расширение для программы [[ESRI]] [[ArcGIS]] 9, служащее для создания KML-файлов из данных [[ArcGIS]]
* [http://KMLer.GeoBlogSpot.Com/ KMLer] — расширение для программы [[ESRI]] [[ArcGIS]] 9, служащее для создания KML-файлов из данных [[ArcGIS]]
* [http://news.eastgeology.com/p/blog-page_1243.html Примеры и библиотеки данных]{{ref-ru}}
* [http://news.eastgeology.com/p/blog-page_1243.html Примеры и библиотеки данных]{{ref-ru}}
{{колонки/конец}}


{{OGC}}
{{OGC}}

Текущая версия от 11:51, 11 сентября 2023

Keyhole Markup Language
Расширение .kml или .kmz
MIME-тип application/vnd.google-earth.kml+xml и application/vnd.google-earth.kmz
Разработчик Keyhole[вд] и Google
Тип формата Геоинформационная система
Расширен из XML

KML (от англ. Keyhole Markup Language — язык разметки Keyhole) — язык разметки на основе XML для представления трёхмерных геопространственных данных в программе Google Планета Земля («Keyhole» до её приобретения Google).

Подмножество языка KML 2.0 может использоваться и для отображения двухмерных карт в сервисе Google Карты[1].

KML-файлы обычно распространяются в ZIP-архиве: KMZ
MIME-тип KML-файлов: application/vnd.google-earth.kml+xml[2]
MIME-тип KMZ-файлов: application/vnd.google-earth.kmz

Содержание файлов

[править | править код]

KML-файл определяет один или несколько объектов для отображения в Google Earth. Этими объектами могут быть:

  • Пометки на карте. Задаётся значок, отображаемый в некотором месте на карте, и его относительная величина, а также текст и цвет и величина надписи, отображаемой возле значка. Есть возможность создать пометку без значка. Например, поставить номера домов района. Для этого нужно просто в стиле создать пустую ссылку на значок:
    <Icon><href></href></Icon>
  • Многоугольник или набор линий. Определяется цвет линий и цвет подписи.
  • Изображение. Определяется положение изображения на поверхности Земли, а также его масштаб. Также можно разместить изображение на экране, не перемещающееся вместе с картой — например, логотип.
  • Трёхмерная модель. Версия языка KML 2.1 (которая соответствует четвёртой версии программы Google Earth) позволяет подключать описание трёхмерных объектов (например, зданий и сооружений). Трёхмерную модель можно задать двумя способами: заданием высоты плоских фигур (вытягиванием) и ссылкой на полноценную модель в формате Collada.

Кроме упомянутых характеристик, для каждого объекта также задаются основные геоинформационные свойства (географическая широта и долгота, а также высота либо над уровнем моря, либо над уровнем поверхности Земли). Может быть приведено краткое описание объекта (которое в дальнейшем отображается во всплывающей подсказке по запросу пользователя). Может быть указан рекомендуемый ракурс наблюдения отмеченного на карте места, то есть рекомендуемая высота, азимут и угол наклона «виртуальной камеры».

Объекты внутри KML-файла можно организовать в иерархические структуры папок и подпапок, чтобы было удобнее совместно включать и отключать отображение логически взаимосвязанных групп объектов.

KML-файл может содержать (в URL-форме) ссылки на другие файлы в формате KML или KMZ, расположенные где-либо в Сети, и задавать условия и регулярность загрузки и отображения данных из этих внешних источников. Такая сетевая ссылка также видна в качестве своеобразной подпапки.

Язык KML во многом следует структуре языка GML — географического языка разметки[3].

Пример KML-разметки

[править | править код]
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.1">
<Placemark>
	<name>Геленджик</name>
	<description><![CDATA[<p>Геленджик, Краснодарский край, Россия.</p>Город
        располагается по&amp;nbsp;берегам Геленджикской бухты,
        но&amp;nbsp;не&amp;nbsp;равномерно (восточный берег исторически
        более населён).]]></description>
	<LookAt id="khLookAt540_copy0">
		<longitude>38.0576198113139</longitude>
		<latitude>44.56963150481845</latitude>
		<altitude>0</altitude>
		<range>14693.40972993507</range>
		<tilt>49.10268313434742</tilt>
		<heading>37.85562764777833</heading>
	</LookAt>
	<Style>
		<IconStyle>
			<scale>0.9</scale>
			<Icon>
				<href>root://icons/palette-4.png</href>
				<x>32</x>
				<y>128</y>
				<w>32</w>
				<h>32</h>
			</Icon>
		</IconStyle>
		<LabelStyle>
			<scale>0.9</scale>
		</LabelStyle>
	</Style>
	<Point id="khPoint541_copy0">
		<coordinates>38.06284424434902,44.56842733252498,0</coordinates>
	</Point>
</Placemark>
</kml>

Примечания

[править | править код]
  1. Sending KML files to Google Maps. Дата обращения: 11 мая 2022. Архивировано 31 марта 2022 года.
  2. Google Earth Help Center Архивировано 24 октября 2007 года.
  3. GML and KML Syntax Архивная копия от 23 июля 2008 на Wayback Machine. September 07, 2005