Сутки проковырялся с route, не мог понять банальную ошибку. Вроде всё работает, но есть большое но.
Задача:
Опеределить ,близлежащее метро к данному адресу, так же следует определить расстояние ну и так далее.
Задача тривиальная и простая и решаю я её следующим образом.
// определяем метро
var myGeocoder_metro = ymaps.geocode(myCoords, { kind : 'metro', results : 1 });
myGeocoder_metro.then(function(res) {
var nearest = res.geoObjects.get(0);
// Получаем название метро
var name_metro = nearest.properties.get('name');
}
Строим маршрут
// определяем маршрут и время
ymaps.route([city, name_metro]).then(function(route) {
// myMap.geoObjects.add(route);
routeLength = route.getLength();
// длину маршрута в метрах.
firtstPathTime = route.getTime();
// Время без учета пробок
firstPathFirstSegmentJamsTime = route.getJamsTime();
// Время с пробками
}, function(err) {
messeng('маршрут не построен');
});
// При построении маршрута в метро не указывается принадлежность метро. и если строить маршрут до молодёжной, то маршрут банально не построится. Связано это с тем, что по мимо Москвы, такое метро есть в Самаре. Сейчас мне приходиться дописывать такую строчку
// '7700000000000' - это КЛАДР
if(metro == '7700000000000') {
name_metro = 'Россия, Москва, ' + name_metro
}
if(metro == '7800000000000') {
name_metro = 'Россия, Санкт-Петербург, ' + name_metro
}
Можно ли здесь
var name_metro = nearest.properties.get('name');
получить принадлежность метро к городу, стране ?