как показать на карте несколько адресов?
в программе формируется url
string url="www.yandex.ru/maps/?text="+адрес;
Process.Start(url)
можно ли вывести таким образом несколько адресов как например в сервисах поиска квартир? пробовал так
www.yandex.ru/maps/?text=Москва Тверская 55, Тверская 31
выводит только последний адрес
www.google.com/maps/place/москва тверская 55, москва тверская 31
ничего не выводит
Ответы (1 шт):
Автор решения: neverd1m
→ Ссылка
Такую задачу можно выполнить с помощью JS API Яндекс.Карт, например передать массив адресов, поочередно их геокодировать и добавлять метку по полученным координатам. Документацию к геокодеру можно найти на страницах Яндекса здесь и здесь.
function init() {
var myMap = new ymaps.Map('map', {
center: [55.765, 37.63],
zoom: 14,
controls: []
});
var searchControl = new ymaps.control.SearchControl({
options: {
provider: 'yandex#search',
strictBounds: 'true',
noPopup: 'true'
}});
var searchArr = ['Москва, Фадеева, 5','Москва, Трубная, 31','Москва, Маросейка, 11'];
searchArr.forEach(function(item) {
ymaps.geocode(item, {
results: 1
}).then(function (res) {
// Выбираем первый результат геокодирования.
var firstGeoObject = res.geoObjects.get(0),
// Координаты геообъекта.
coords = firstGeoObject.geometry.getCoordinates();
firstGeoObject.options.set('preset', 'islands#darkBlueDotIconWithCaption');
// Получаем строку с адресом и выводим в иконке геообъекта.
firstGeoObject.properties.set('iconCaption', firstGeoObject.getAddressLine());
// Добавляем первый найденный геообъект на карту.
myMap.geoObjects.add(firstGeoObject);
});
});
myMap.controls.add(searchControl);
}
ymaps.ready(init);