Антон Корзунов «Как разместить тысячи объектов на...
DESCRIPTION
Антон Корзунов «Как разместить тысячи объектов на карте без увеличения нагрузки на браузер» Конференция Dump, Екатеринбург, 25 мая 2012 1. Методы передачи данных на клиент. 2. Особенности хранения и выборки геоданных. 3. Механизмы визуализации данных в браузере. Возможности и ограничения. Новые инструменты в API Яндекс.Карт 2.0.TRANSCRIPT
Как разместить тысячи объектов на карте
Антон Корзунов,разработчик интерфейсов 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