Всем привет,
спасибо Кате Текуновой из Яндекса, подтолкнувшей меня на рассказ о нашем проекте - возможно, кому-нибудь из вас он будет интересен
- она красивая! Это вообще огромный плюс в любых приложениях, не только транспортных.
- на ней есть Пробки "из коробки". Подключаешь слой и все работает. Мы их повесили на галочку, чтобы можно было включать и отключать, т.к. когда машинок много, начинается визуальный шум.
- она хорошо работает на смартфонах.
Мы использовали все основные объекты карты - метки, балуны - на 100%. Метки представлены несколькими ObjectManager'ами и группами. Очень удобно оказалось задавать диапазоны масштаба для менеджеров - иконки остановок у нас показываются разные для разных масштабов карты. Совершенно неоценимая возможность - темплейты для стилей меток. По карте ездят машины разных типов (трамваи, троллейбусы и т.д.) и с разными номерами маршрутов. Все они выглядят немного по разному. Но использование примерно такого шаблона -
YMaps.Template('<div class="bus-$[moving] $[tags] offset-$[direction]"><img src="/img/icons/bus/$[route].png"></div>')
- дает возможность держать все метки в одной группе, а выбор внешнего вида делает шаблон. Сами иконки остановок и транспорта делал дизайнер специально для нас.
Естественно, все что можно - кликабельно. Клик на остановке покажет маршруты, идущие через нее, клик на метке трамвая - прогноз прибытия этого маршрута на его остановки.
Мы не использовали сервис Маршрутов просто потому, что он недоступен в API, ну и ладно - информация по маршрутам и остановкам у нас своя, и аналитику по ней мы считаем сами.
Кроме "большого", мы сделали еще "маленький" интерфейс - www.irk.fm/bus/m/. Он больше приспособлен для браузеров iPhone и Android. Там тоже используется карта, правда, ее пришлось несколько допиливать. Обычные кнопки + и - на карте слишком мелкие для сенсорных экранов. Пришлось отрисовать свои кнопки с нуля и перекрыть CSS для них, теперь на мобильной карте кнопки какие надо.
Главное, чего не надо бояться при разработке подобных сервисов - это лицензионного соглашения Яндекс.Карт. Понятно что у всех сервисов могут быть свои тонкости, поэтому я заручился одобрением Яндекса до начала разработки, а не после