Download - Антон Корзунов «Как разместить тысячи объектов на карте без увеличения нагрузки на браузер»
Как разместить тысячи объектов на карте
Антон Корзунов,разработчик интерфейсов API Яндекс.Карт
DUMP, Екатеринбург, 25 мая 2012
1
API Яндекс.Карт 2.0
2
API Яндекс.Карт 2.0
— Быстрее работает
— Кластеризатор
— Метки на canvas
— Активные области
3
Для решения некоторых задач нужно пожертвовать функциями
4
Снижаем нагрузку
≈ 20% package.full → package.map
≈ 20% отказ от сложных макетов
≈ 50% overlays напрямую
github.com/theKashey/y2FastOverlay
5
Когда данных очень много,к ним нужен особый подход
6
Передача данных одним куском
7
Грузим только то, что видно
8
Загрузка по границам
9
Четкие границы
10
Тайлы — наше всё
11
github.com/theKashey/tileLoader
Загрузка данных по тайлам
12
Весь покрытый метками?
2 %
38 %60 %
Моря и океаны СушаПолезные объекты
По данным TileMill
13
Пирамида тайлов
Адрес в пирамиде — 132...
14
Тайловая координатная система
15
Раздвигаем границы
16
github.com/theKashey/quadLoader
Загрузка данных по пирамиде
17
Народная карта
18
Пробки
19
Фотки
https://github.com/twirl/hsTiler
20
Активные области
21
Какое решение выбрать
Немногоданных
Специально ничего делать не нужно. API справится сам.
Много сложныхданных
Очень много данных
Нельзя грузить сразу все. Тайловая загрузка (по пирамиде) или хотя бы по границам.
Нужно использовать технологиюАктивных областей.
Сайт http://api.yandex.ru/maps
Клубhttp://clubs.ya.ru/mapsapi/
Документацияhttp://api.yandex.ru/maps/doc
22
Мастер-класс
23
Завтра, с 10:00 до 13:00
Вопросы?
24
Антон Корзунов
@theKashey