Leaflet (software)

редактировать
Leaflet
Leaflet logo.svg
Автор (ы))
Первоначальный выпуск13 мая 2011 г. (2011-05-13)
Стабильный выпуск 1.7.1 / 4 сентября 2020 г. (2020-09-04)
Репозиторий Измените это на Wikidata
Написано наJavaScript
Платформа См. Поддержка браузера
Тип Библиотека JavaScript
Лицензия BSD-2-Clause
Веб-сайтleafletjs.com

Leaflet является открытым исходным кодом JavaScript библиотека, используемая для создания картографических веб-приложений приложений. Впервые выпущенный в 2011 году, он поддерживает большинство мобильных и настольных платформ, поддерживая HTML5 и CSS3. Среди его пользователей - FourSquare, Pinterest и Flickr.

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

Он разработан Владимиром Агафонкиным, который присоединился к Mapbox в 2013 году.

Содержание
  • 1 Использование
  • 2 Возможности
    • 2.1 Элементы
    • 2.2 Поддержка Форматы ГИС
    • 2.3 Поддержка браузера
  • 3 Сравнение с другими библиотеками
  • 4 История
  • 5 Внешние ссылки
  • 6 Ссылки
Используйте
базовую демонстрацию с использованием Leaflet.

Типичный использование Leaflet включает привязку элемента «map» Leaflet к элементу HTML, например, div. Затем к элементу карты добавляются слои и маркеры.

// создаем карту в блоке "map", устанавливаем вид в заданное место и масштабируем var map = L.map ('map'). SetView ([51.505, -0.09], 13); // добавляем слой листов OpenStreetMap // Применяется политика использования листов: https://operations.osmfoundation.org/policies/tiles/ L.tileLayer ('http: // {s}.tile.openstreetmap.org / {z} /{x}/{y}.png ', {attribution:' © OpenStreetMap участники '}). addTo (карта);

Уникальной особенностью буклета является отображение карт в несферической проекции Меркатора. Сама библиотека Leaflet доступна через переменную L.

Features

Leaflet поддерживает слои Web Map Service (WMS), слои GeoJSON, Vector слои и слои плитки изначально. Многие другие типы слоев поддерживаются с помощью плагинов.

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

Элементы

Основные типы объектов Leaflet:

  • Растровые типы (TileLayer и ImageOverlay)
  • Векторные типы (путь, многоугольник и определенные типы, такие как круг)
  • Сгруппированные типы (LayerGroup, FeatureGroup и GeoJSON)
  • Элементы управления (Zoom, Layers и т. Д.)

Также существует множество служебных классов, таких как интерфейсы для управления проекциями, преобразованиями и взаимодействие с DOM.

Поддержка форматов ГИС

Leaflet имеет базовую поддержку нескольких стандартных форматов ГИС, а другие поддерживаются в надстройках.

СтандартныйПоддержка
GeoJSON Хорошая, основная поддержка с помощью geoJsonфункции
KML, CSV, WKT, TopoJSON, GPXПоддерживается в подключаемом модуле Leaflet-Omnivore
WMS Основная поддержка через подтип TileLayer.WMS
WFS Не поддерживается, хотя существуют подключаемые модули сторонних производителей.
GML Не поддерживается.

Поддержка браузером

Leaflet 0.7 поддерживает Chrome, Firefox, Safari 5+, Opera 12+ и IE 7-11.

Сравнение с другими библиотеками

Leaflet напрямую сопоставим с OpenLayers, поскольку оба являются библиотеками JavaScript с открытым исходным кодом и только на стороне клиента. Библиотека в целом намного меньше, около 7000 строк кода по сравнению с 230000 OpenLayers (по состоянию на 2015 год). Он имеет меньший объем кода, чем OpenLayers (около 123 КБ против 423 КБ), отчасти из-за его модульной структуры. База кода новее и использует новейшие функции JavaScript, а также HTML5 и CSS3. Однако в Leaflet отсутствуют функции, поддерживаемые OpenLayers, такие как Web Feature Service (WFS) и встроенная поддержка проекций, отличных от Google Web Mercator (EPSG 3857).

Это также сопоставим с проприетарным закрытым исходным кодом Google Maps API (дебютировал в 2005 году), и оба из них включают в себя значительный серверный компонент для предоставления таких услуг, как геокодирование, маршрутизация, поиск и интеграция с такими функциями, как Google Earth. Google Maps API обеспечивает скорость и простоту, но не является гибким и может использоваться только для доступа к сервисам Google Maps. Однако новая часть DataLayer API Google позволяет отображать внешние источники данных.

History

Leaflet начал свою жизнь в 2010 году как «API веб-карт», библиотека JavaScript для сопоставления CloudMade провайдер, в котором в то время работал Агафонкин. В мае 2011 года CloudMade анонсировала первую версию Leaflet, созданную с нуля, но с использованием частей старого кода API.

  • 0,1: 17 мая 2011 г.
  • 0,2: 18 июня 2011 г.
  • 0,3: 14 февраля 2012 г.
  • 0,4: 30 июля 2012 г.
  • 0,5: 17 января 2013 г.
    • В этом выпуске представлена ​​поддержка Retina и многие другие удобство и удобство использования.
  • 0,6: 26 июня 2013 г.
    • В этом выпуске расширен диапазон методов и событий API, улучшено удобство использования и добавлено сохранение GeoJSON. Он был завершен в двухдневном спринте кода при поддержке Mapbox.
  • 0.7: 22 ноября 2013 г.
    • В этом выпуске основное внимание уделялось исправлению ошибок, и в нем было объявлено, что скоро произойдет рефакторинг и потенциальная обратная несовместимость.
  • 1.0: 27 сентября 2016 г.
    • Этот выпуск содержит более 400 изменений по сравнению с v0.7.7:
      • Повышена производительность во всех аспектах библиотеки и, в частности, векторных слоев.
      • Всплывающая анимация (масштабирование и панорамирование по кривой).
      • Поддержка уровня дробного масштабирования.
      • Улучшенный алгоритм загрузки плитки с меньшим мерцанием.
      • Пользовательское управление панелями (включая несколько векторных слоев панели и чередование векторов и слоев листов).
      • Лучшая поддержка нестандартных проекций.
      • Больше специальных возможностей.
      • Улучшенная документация.
      • Повышение стабильности.
  • 1.1: 27 июня 2017 г.
    • В этом выпуске добавлены наложения видео и выполняется переход на модули ECMAScript 6.
  • 1.2: 25 октября 2017 г.
  • 1.3: 15 января, 2018
  • 1.3.2: 17 июля 201 г. 8
  • 1.3.3: 18 июля 2018 г.
  • 1.3.4: 21 августа 2018 г.
  • 1.4.0: 30 декабря 2018 г.
  • 1.5.0 и 1.5.1: 8 мая 2019 г.
  • 1.6.0: 17 ноября 2019 г.
  • 1.7.1: 4 сентября 2020 г.
Внешние ссылки
Ссылки
Последняя правка сделана 2021-05-26 04:12:06
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте