Новая js-библиотека для карт

CloudMade анонсировал Leaflet: новую javascript-библиотеку с открытым исходным кодом для отображения карт. Код с её использованием выглядит несколько понятнее, чем в OpenLayers, но эти инструменты несопоставимы по функциональности и задачам. Пока что Leaflet находится в состоянии беты, багрепорты оставлять на гитхабе.
Поделиться
Отправить
2011   javascript

Мнения, высказанные на этом сайте, отражают точку зрения лично автора сайта и ничью больше: ни его бывших или настоящих работодателей, ни семьи и знакомых.

5 комментариев
Готэсса 2011
Всякие гуглы оно не умеет?
Илья Зверев 2011
Если подобрать адреса тайлов — то будет уметь. Хотя заточено, конечно, под OSM и клаудмейд.
Mourner 2011
Из коммерческих гугл и яху запрещают использовать тайлы не через свой АПИ, а вот Бинг прикрутить можно. :) Надо будет сделать экзампл.

Автор (т. е. я) русскоязычный, можете задавать вопросы :)
Sergey Astakhov 2011
Mourner — а как у неё с производительностью векторной отрисовки под разными браузерами?

Сможет раз в 10 секунд обновлять 5000 векторных точек/маркеров (пример — онлайновый мониторинг движущихся авто).
OpenLayers под IE помирает уже на паре сотен точек.
Mourner 2011
Полилайны рисует очень шустро (в пакете есть дебаговый пример с роутом из 50000 точек, в Хроме и IE9 летает, в ИЕ8 залипает на пару секунд при зуме, пока идёт упрощение, но в остальном неплохо справляется). Что интересно, IE8 намного тормознее IE6-7 отображает VML.

Насчёт маркеров — надо потестить, но в любом случае должно быть намного быстрее OpenLayers. Я бы точно их не рисовал векторами (DOM-элементы намного быстрее). В идеале было бы и от иконок отказаться и отображать обычными дивами-прямоугольниками (можно их поворачивать с помощью CSS3 transform / matrix filter в IE).

Надо запланировать фичу обработку кликов в маркерах через event delegation, в случаях нескольких тысяч точек должно еще больше ускорить...
Mourner 2011
Вообще редко когда нужно показывать в текущем прямоугольнике карты 5000 точек, это ведь неюзабельно совершенно — захламит всё визуально, карты видно не будет... Если бы всё-таки пришлось, надо было бы еще попробовать рисовать их с помощью Canvas (скоро напишу пример для этого). И кластеризацию делать (объединять близлежащие точки в одну).
Популярное