Сегодня моя карта Cycle Trail Map в общем-то доведена до этапа, когда её можно интегрировать в другие сервисы. В связи с этим предлагаю в ВелоСамарском Навигаторе добавить новый слой с этой картой. Карта СТМ создавалась главным образом для того, чтобы на любом масштабе видеть все имеющиеся в базе данных OpenStreetMap лесные тропы, что важно и полезно для составления маршрутов. Она выглядит малость нагромождённой по сравнению с другими картами, но зато на ней видно всё и сразу. Нагромождение линий может сильно помешать рассматриванию паутины векторных маршрутов в Навигаторе, поэтому традиционная карта от Google конечно же тоже нужна, но при рассматривании отдельного маршрута слой СТМ может быть крайне полезным. А уж в Рисовалке тем более. Поэтому и предлагаю добавить его в качестве опции.
Шаблон для тайлов:
Код: Выделить всё
http://ctm.rsh.su/tile/{$z}/{$x}/{$y}.png
Карта отрендерина до 13-го уровня, начиная с 14-го автоматически происходит редирект на карту OpenCycleMap (шаблон URL остаётся прежним). Тайлы покрывают всю Самарскую область и часть соседних областей.
Поскольку использованы данные OpenStreetMap и (с 14-го масштаба) тайлы OpenCycleMap, необходимо выполнить требования о размещении копирайта:
- до 13-го масштаба включительно: Data © OpenStreetMap Contributors, tiles © Roman Shuvalov
- с 14-го масштаба: Data © OpenStreetMap Contributors, tiles © Andy Allan
На сайте проекта (http://cycletrailmap.romanshuvalov.com) я использовал API Яндекс.Карт, в нём у слоя есть функция getCopyright(pos,zoom), которая должна возвращать строку с копирайтом. Определив эту функцию и вписав туда что-то вроде
Код: Выделить всё
if (zoom > 13) {
return 'Data © <a href="http://openstreetmap.org/copyright">OpenStreetMap Contributors</a>, tiles © <a href="http://thunderforest.com/opencyclemap/">Andy Allan</a>';
}
return 'Data © <a href="http://openstreetmap.org/copyright">OpenStreetMap Contributors</a>, tiles © <a href="http://romanshuvalov.com">Roman Shuvalov</a>';
Словом, интеграция карты СТМ в Навигатор в качестве отдельного слоя должна быть довольно простой задачей. Если возникнут сложности, могу попробовать разобраться с Google Maps API и помочь решить проблемы, если таковые возникнут.
И еще, маленькое пожелание: уменьшите толщину маршрутов (красных линий) раза эдак в полтора. Или даже в два. Будет чище и опрятней.
Такие дела. Спасибо за внимание, жду обратной связи