Клуб API Карт

Поиск горда и зумирование для показа всего города

Пост в архиве.

Как после поиска по названию населенного пункта его приблизить чтобы был виден весь город?

Сейчас так (зумит на макс)

ymaps.geocode(city_name).then(function (res) {
            var coords = res.geoObjects.get(0).geometry.getCoordinates();


            map.zoomRange.get(coords).then(function (range) {
                console.log(coords)
                map.setCenter(coords, range[1]);
            });


        });


А хочется так

5 комментариев

            ymaps.geocode('Москва', { results: 1 }).then(function (res) {

                // Выбираем первый результат геокодирования

                var firstGeoObject = res.geoObjects.get(0);

 

                map.setBounds(firstGeoObject.properties.get('boundedBy'));

           });

Андрей Грэй
28 января 2016, 02:43

Бабушка-бэтмен, я правильно понимаю, что по всем городам в картах есть границы города (не границы, а прямоугольная область в которую входят границы города - boundedby)? Не нужно в этом случае отрабатывать ошибку, если границ такого города не существует?

Границы есть всегда,

но нужно учитывать что геокодер может и ничего не найти.

Спасибо

Sergey Konstantinov
28 января 2016, 02:43
Только
map.setBounds(firstGeoObject.properties.get('boundedBy'), { checkZoomRange: true });