То, что кластеры накладываются, это баг, который будет пофикшен, ну и оптимизировать тоже еще будем. Так что есть шанс, что всё-таки будет работать как надо с 50000. :)
Leaflet — всего лишь JS-библиотека. Для прокладывания маршрутов нужен веб-сервис, к примеру, есть HTTP-сервис маршрутов от CloudMade, который можно достаточно просто интегрировать вручную.
Я и на фабрики решился с трудом. :) Не очень мне нравится подход с самовызывающимися конструкторами. Мне как-то спокойнее, когда это происходит явно — так проще понять код, меньше магии.
За запуск инерционности отвечает опция inertiaThreshold. Просто мышь не очень хорошо подходит для таких штук — если установить порог больше, то инерция будет иногда происходит, когда ее не ждёшь, с заметной паузой между движением пользователя и инерционным.
Насчёт плагина — знаем про эту проблему, пока не придумали, как это лучше решить. Наверное в таком случае лучше отключать инерцию.
Около года пользуюсь Smart Cover, айпад каждый день таскаю в рюкзаке (часто при этом вместе с железяками и проводами, когда езжу на муз. репетиции) и в руках, но задняя крышка почему-то выглядит как новая. :) И даже если появится пару царапин, не обращу на это внимания, т.к. я эту сторону почти и не вижу никогда — на глазах всегда сторона с экраном.
Если написать так, то в браузерах, не поддерживающих Uint8Array, выдаст ошибку. Ее можно было бы исправить, написав window.Uint8Array, но учитывая то, что код писался не только под браузеры, но и под node.js и подобные среды, изначальный вариант самый универсальный.
У Leaflet просто главная идея несколько иная — создать максимально быстрое, простое, удобное, стабильное и гибкое «ядро» с базовыми функциями (карта с тайлами, основные проекции, маркеры, попапы, векторные слои и вся интерактивность), оставив оставив более специфические вещи плагинам. Функции вроде кластеризации намеренно не допускаются в основной код (хотя уже есть как минимум 3 разных сторонних реализации).
За запуск инерционности отвечает опция
inertiaThreshold
. Просто мышь не очень хорошо подходит для таких штук — если установить порог больше, то инерция будет иногда происходит, когда ее не ждёшь, с заметной паузой между движением пользователя и инерционным.Насчёт плагина — знаем про эту проблему, пока не придумали, как это лучше решить. Наверное в таком случае лучше отключать инерцию.
request/cancelAnimationFrame
при обновлении позиции карты.Что касается самого переключения — есть встроенный контрол для этого.