Sunday
Cōgitō ergō sum
- Регистрация
- 13 Дек 2009
- Сообщения
- 823
- Реакции
- 342
- Автор темы
- #1
Помогите плиз разобраться с картами.
Есть код построения маршрута между заданными точками.
Проблема в том, что автоматически не вычисляются транзитные точки, не вычисляется расстояние по дороге, время в пути. В базу записывается только расстояние по прямой.
В какой момент произошел сбой - не понятно. Ведь раньше этой проблемы небыло. Возможно после последнего обновления АПИ.
Есть код построения маршрута между заданными точками.
Проблема в том, что автоматически не вычисляются транзитные точки, не вычисляется расстояние по дороге, время в пути. В базу записывается только расстояние по прямой.
В какой момент произошел сбой - не понятно. Ведь раньше этой проблемы небыло. Возможно после последнего обновления АПИ.
HTML:
ymaps.ready(init_ya_map);
function init_ya_map () {
var myMap = new ymaps.Map("map_ya", {
bounds: [[{:BOUNDS_1:}],[{:BOUNDS_2:}]],
controls: ["typeSelector", "fullscreenControl", "zoomControl"],
});
myMap.behaviors.disable('scrollZoom');
ymaps.route( [ [{:CITY_START_X_Y:}], [{:CITY_END_X_Y:}] ], {
avoidTrafficJams: false,
mapStateAutoApply: true})
.then(function (route) {
myMap.geoObjects.add(route);
var points = route.getWayPoints(),
lastPoint = points.getLength() - 1;
points.options.set('preset', 'islands#redStretchyIcon');
points.get(0).properties.set('iconContent', '{:CITY_START_NAME:}');
points.get(lastPoint).properties.set('iconContent', '{:CITY_END_NAME:}');
var moveList = '<ul><li>Трогаемся,</li>',
way,
segments;
for (var i = 0; i < route.getPaths().getLength(); i++) {
way = route.getPaths().get(i);
segments = way.getSegments();
for (var j = 0; j < segments.length; j++) {
var street = segments[j].getStreet();
moveList += '<li>';
moveList += ('Едем ' + '' + segments[j].getHumanAction() + '' + (street ? ' на ' + street + '' : '') + ', проезжаем ' + segments[j].getLength() + ' м.,');
moveList += '</li>';
}
}
moveList += '<li>Останавливаемся.</li></ul>';
$('#map_directions div').html(moveList);
}, function (error) {
alert('Возникла ошибка: ' + error.message);
});
};
Последнее редактирование: