Leaflet | |
---|---|
| |
| |
Тип | JavaScript-библиотека |
Автор | |
Написана на | JavaScript[1] |
Первый выпуск | 13 мая 2011 |
Последняя версия |
|
Состояние | активное |
Лицензия | 2-пунктная лицензия BSD[d][3][4] |
Сайт |
leafletjs.com (англ.) leafletjs.com |
Leaflet — библиотека с открытым исходным кодом, написанная на JavaScript, предназначенная для отображения карт на веб-сайтах. Поддерживает большинство мобильных и стационарных платформ из числа тех, что поддерживают HTML5 и CSS3.
Наряду с OpenLayers и Google Maps API — одна из наиболее популярных картографических JavaScript-библиотек, использующаяся на таких крупных сайтах, как Flickr, Foursquare, Craigslist, Data.gov, IGN, проектах Викимедиа, OpenStreetMap, Meetup, WSJ, MapBox, CloudMade, CartoDB и других[источник не указан 747 дней].
Автор библиотеки — киевлянин Владимир Агафонкин на момент выхода первой версии (2011[5]) был сотрудником CloudMade, c 2013 перешёл в MapBox[6].
Leaflet позволяет разработчику, не знакомому с ГИС, легко отображать растровые карты, состоящие из маленьких фрагментов — тайлов, с, возможно, дополнительными слоями, накладываемыми поверх основного. Слои могут быть интерактивными, например, отображать подсказку при клике по маркеру.
Типичное использование Leaflet заключается в привязке карты к какому-либо элементу веб-страницы, например, к блоку <div>
, после чего к карте добавляются слои и маркеры.
// create a map in the "map" div, set the view to a given place and zoom
var map = L.map('map').setView([55.432, 37.654], 13);
// add an OpenStreetMap tile layer
L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {
attribution: '© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
}).addTo(map);
Библиотека Leaflet доступна через переменную L
.
Leaflet поддерживает слои Web Map Service (WMS), GeoJSON, векторные и тайловые слои. Многие другие типы слоёв поддерживаются дополнительными модулями.
Как и в других картографических веб-библиотеках, в Leaflet реализована следующая модель: отображается базовая карта с, возможно, растровыми и векторными слоями, накладываемыми поверх неё.
Основные типы объектов Leaflet:[7]
Также существуют вспомогательные классы для управления проекциями, трансформаций и взаимодействия с объектной моделью документа (DOM).
Несколько стандартных форматов ГИС поддерживается ядром Leaflet, остальные — модулями.
Стандарт | Поддержка |
---|---|
GeoJSON | Хорошая, ядро содержит функцию geoJson [8] |
KML, CSV, WKT, TopoJSON, GPX | Модуль Leaflet-Omnivore[9] |
WMS | Ядро поддерживает подтип TileLayer.WMS [10] |
WFS | Не поддерживается ядром, существует сторонний модуль.[11] |
GML | Не поддерживается.[12] |
Leaflet 0.7 поддерживает Chrome, Firefox, Safari 5+, Opera 12+ и IE 7—11.[13]
Leaflet обычно сравнивают с OpenLayers — обе являются открытым ПО, обе — клиентские библиотека на JavaScript. Leaflet заметно компактнее, содержит около 7 тысяч строк против 230 тысяч у OpenLayers по состоянию на 2015.[14] Leaflet занимает меньше места, чем OpenLayers (около 123 кБ[15] против 423[16]).
Также её сравнивают с проприетарной закрытой Google Maps API (впервые вышла в 2005) и Bing Maps API — они обе используют значительную часть на стороне сервера для предоставления таких услуг, как геокодировние, прокладка маршрутов, поиск и интеграция с дополнительным ПО, таким как Google Earth[источник не указан 1257 дней]. Google Maps API дают скорость и простоту вместе с гибкостью, однако дают доступ только к сервисам Google Maps. Впрочем, DataLayer — часть Google’s API — позволяет использовать внешние данные[17].
Leaflet появилась в 2010 как «Web Maps API» — библиотека на JavaScript для картографического провайдера CloudMade, где работал Владимир Агафонкин. В мае 2011 CloudMade объявил о выходе первого релиза Leaflet, написанного с нуля, но использующего фрагменты старого кода[18].
В версии 0.5 появилась поддержка дисплеев с повышенной плотностью и различные улучшения пользовательского интерфейса[19].
В этой версии расширен ряд методов и событий API, улучшена юзабилити и добавлено сохранение GeoJSON. Она была завершена в ходе двухдневного код-спринта, поддержанного Mapbox.[20]
Релиз был сконцентрирован на устранении неполадок. Было объявлено, что в ходе переработки будет пропадать обратная совместимость[21].
По сравнению с версией 0.7.7 было сделано более 400 изменений.[22]
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .