Задать вопрос
@madc0de

Как в yandex api maps прокладывать маршрут от точки А в точку Б при нажатии на кнопку вне карты?

Есть список вне карты. Нужно при нажатии строить маршрут в самой карте. Подскажите как это реализовать?
  • Вопрос задан
  • 3003 просмотра
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
lazalu68
@lazalu68
Salmon
Не вдавался в подробности, но думаю этих примеров должно хватить:
JS API Яндекс.Карт: Получение сегментов маршрута
JS API Яндекс.Карт: Построение автомобильного муль...

Старый не особо уместный ответ
А в чём именно у вас возникла сложность? Ваша задача вполне типичная, насколько я знаю решение есть в любом примере для yaMaps, в том числе на сайте с документацией.

// Создаёте карту
var map = new google.maps.Map(...);

// Инициализируете утилиты для работы с маршрутами
var directionsService = new google.maps.DirectionsService();
var directionsDisplay = new google.maps.DirectionsRenderer();

// Привязываете вашу карту к утилитам
directionsDisplay.setMap(map);
directionsDisplay.setPanel(panel_element);

// Создаёте объекты точек маршрута
var start  = new google.maps.LatLng(...);
var finish = new google.maps.LatLng(...);

// Формируете запрос для сервиса маршрутов
var request = {
    origin: start,
    destination: finish,
    travelMode: google.maps.DirectionsTravelMode.DRIVING
};

// С помощью утилиты DirectionsService посылаете запрос
directionsService.route(request, function(response, status) {
    // При успешном выполнении запроса передаёте рендереру результат
    if (status == google.maps.DirectionsStatus.OK) {
        directionsDisplay.setDirections(response);
    }
});


Насколько я знаю, точки маршрута также можно создавать в формате '53.085622, 70.307219' или [53.085622, 70.307219], но не ручаюсь. Впрочем, на все вопросы связанные с приведенным кодом смело можно искать ответы в документации.

На тостере часто пишут "а как сделать это с яндекс-картой, а как сделать то", иногда в таких случаях выясняется что человек хочет взаимодействовать с картой не имея доступа к объекту карты. Если у вас такая же петрушка, то можете использовать декоратор.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽
18 дек. 2024, в 12:22
5000 руб./за проект
18 дек. 2024, в 11:57
500 руб./в час