Клуб API Карт

Участки маршрута разным цветом.

m588488
30 октября 2012, 16:11

Здравствуйте. Когда на карте имеется один маршрут, но состоящи из допустим 200 меток, становится не понятным последовательность от одной метки до другой, как можно сделать так, что бы все участки отметки к метки были разного цвета?

Или есть более правильные варианты?

Может выделять линию другим цветом, при нажатии на балун мышкой? 

Покажите пожалуйста в коде как это реализовать.


var data = [ 

    { "name": "Маршрут 1", "wayPoints": [
        "Россия, Ярослаская область, Ярославль, Ленина 1",
        "Россия, Ярослаская область, Ярославль, Ленина 2",
        "Россия, Ярослаская область, Ярославль, Ленина 3",
        "Россия, Ярослаская область, Ярославль, Ленина 4"
    ]}, 
    ... 
};
// Контейнер для меню маршрутов
var menu = $('<ul/>');
for(var i = 0, len = data.length; i < len; i++) {
    (function (data) {
        var item = $('<li/>'),
            route;
        // Создаем DOM-элемент меню для каждого маршрута
        $('<a href="#">' + data.name + '</a>').toggle(function () {
            if(route) {
                myMap.geoObjects.add(route);
            }   
            else {
                ymaps.route(data.wayPoints, {
                    avoidTrafficJams: true,                                                                                                                                                                                            
                    mapStateAutoApply: true
                }).then(function (result) {
                    myMap.geoObjects.add(route = result);
                }); 
            }   
        }, function () {
            route && myMap.geoObjects.remove(route);
        }).appendTo(item);
        item.appendTo(menu);
    }(data[i]));
}
menu.appendTo('body');
4 комментария
Подписаться на комментарии к посту

Цвет всей линии задается опцией strokeColor

а как ее подключить что бы сработало для конкретного участка?

Нельзя изменить цвет отдельного участка.

Только всей линии.

Получается что вам потребуется вычленить интересующий вас сегмент и отрисовать отдельно.

Спасибо.

А может есть более правильный вариант решения данной проблемы?

Получается когда много объектов находятся рядом, очень сложно понять от какого и куда идет маршрут, и уж тем более не понять где он проходит.