Клуб API Карт

Маршрут к созданным меткам

flancejob
8 мая 2013, 16:20

Добрый день.

На карте добавляются метки с помощью ymaps.Placemark 

balloonContent там определенный ставится.

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

Я делаю с помощью ymaps.Placemark отдельную метку и потом пытаюсь строить маршрут от нее к другим на карте

с помощью ymaps.route

 

ymaps.route([[$('#myplacex').val(), $('#myplacey').val()], [59.938806,30.314278]]).then(

function (route) {

myMap.geoObjects.add(route);

},

function (error) {

alert('Возникла ошибка: ' + error.message);

}

);

 

  

и так ко всем меткам.

Маршрут строится, но эти метки заменяются как бы другими на их месте и содержимое в балунах менятся с нормального на "59.938806,30.314278"

Подскажите, пожалуйста

10 комментариев
Подписаться на комментарии к посту

я так понимаю, нужно что-то установить в опциях отсюда http://api.yandex.ru/maps/doc/jsapi/2.x/ref/reference/GeoObject.xml

 

но не пойму какую опцию

решил вроде с помощью points.options.set('iconImageSize', [0, 0]);

 

но какое-то неудобное решение на мой взгляд. костыль

если метки у тебя свои тебе нужно добавить на карту только полилинию маршрута

замени
myMap.geoObjects.add(route);
на
myMap.geoObjects.add(route.getPaths());
route - это коллекция из линий маршрута и путевых точек. Если путевые точки вам не нужны, показывайте на карте только маршрут. Вместо
myMap.geoObjects.add(route);
напишите
myMap.geoObjects.add(route.getPaths())
опередил меня на минуту ))

этот способ работает как надо

НО линии какие-то тонкие, почему-то. невнятные

наверное потерялись стили
выстави их заного - добавь еще такую строчку
route.getPaths().options.set ('preset', 'default#route');

или может 'default#router', точно не помню

не помогает!(

решил так

myMap.geoObjects.add(route.getPaths());

var points = route.getPaths();

points.options.set('strokeWidth', 2);

а можно все-таки сделать, чтобы одна метка была? та, откуда идет маршрут?

 

потому что сейчас у меня трудность - Placemark создается по координатам. А мне нужно, чтобы по адресу. А он так не может