image
http://tatre.ru/map/?map (http://e-ivanov.com/map) Разработана от сервера до верстки, также клиентская часть на JavaScript. Применяю canvas для рисовки районов на карте, есть редактор районов. Универсальный движок для карты. Названия районов в превьюшке отображаются при наводке мыши на район. На самой карте названия районов могут отображаться в двух вариантах: как и в превьюшке, около мыши, так и постоянно около района, размещаясь наиболее близко к оному. Масштабирование задаётся при загрузке карты и в последующем отображении масштаб можно сменить. Пользователь может ставить собственные метки на карту, давать им название и текст. По получаемой ссылке другой пользователь может открыть карту и увидеть метку в данном месте. На карте присутствуют улицы, в админке их можно редактировать, экспортировать и импортировать. Для пользователя существует поиск по улицам - можно ввести часть слова, после чего будет выведен список подходящих под этот фильтр улиц, через который можно попасть в требуемое место на карте. Применяю canvas. И мне он нравится. Для рисовки границ районов (синяя линия), полупрозрачного заполнения оных и рисовки точек привязки границ (красные точки). Разработал блок для показа этого холста (canvas - холст) в видимой точке просмотра (карта, например, 8000 на 8000 точек, а холст использую 1100 на 800). Алгоритм рисовки названия района над самим видимым участком оного. Применяю четыре блока проверок-расчёта.
e-ivanov.ru/map