Клуб API Карт

Параметры ломаных из MySQL?

maxim.shvirev
7 августа 2010, 18:56

Добрый день!

Пытаюсь создать карту качества дорожного покрытия для роллеров и велосипедистов с возможностью добавления полилиний пользователями. С созданием редактора проблем не возникло (ломаные со всеми необходимыми параметрами сохраняются в бд MySQL), а вот над отображением мучаюсь уже который день. Нигде не смог найти как при выводе ломаных на карту задать параметры цвета и толщины из базы данных. Подскажите пожалуйста как это реализовать или где отыскать конкретные примеры, которые можно взять за образец. Спасибо!

7 комментариев
Интересно будет посмотреть на проект.

Я занимаюсь разработкой рисовалки маршрутов для пятничных ночных покатушек. (Санкт-Петербург)
http://route.pin-x.ru/test/
Сейчас на стадии беты :)

Пара вопросов по проекту:
Какой город центральный,

Каким методом собираетесь выводить данные для конечного пользователя?
Здорово, мы значит с вами коллеги :)
Я для Воронежа делаю. Кину ссылку как начнет что-то получаться.
Выводить хочу из базы данных с помощью скрипта, который создает файл YMapsML. Сами линии получается выводить, но без учета цвета и толщины, записанных в MySQL.
Есть два пути:
1. сохранять в БД праметры линии, потом каждый раз при рисовании из БД создавать для нее стиль и указывать в нем параметры.

2. сохранить в БД опиции линии (.getOptions() )  и при рисовании линии из БД просто указывать созраненные опции (а опции уже содержат в себе все параметры линии, кроме балуна, хинта, метадаты и id)
Вот я как раз по первому пути и пошел, создал php-файл для формирования стиля. Но так как в программировании не очень силен, то дальше вот этого урока не продвинулся http://webmap-blog.ru/yandex-maps/api-yandeks-kart-%E2%80%93-risuem-poliliniyu-i-soxranyaem-ee-v-baze-dannyx-mysql
Я так понимаю, что стилей будет не так уж и много.
Можно просто средствами джаваскрипт описать их, а в базе хранить только имя:


var s = new YMaps.Style();
s.lineStyle = new YMaps.LineStyle();
s.lineStyle.strokeColor = '0000FF55';
s.lineStyle.strokeWidth = '5';
....
YMaps.Styles.add("polyline#style1", s);

_________

polyline.setStyle(
'polyline#style1')
Упс, это было для javascript API, для XML вот тут:
ymaps:style