Клуб API Карт

март 2015
Возможность переключения маршрутов
www.169.ru
2 марта 2015, 10:49

Добрый день!

На своём сайте мы  разместили карту с возможностью проложить маршрут. Но у нас не получилось вывести функционал возможности переключения маршрута и все возможные маршруты выводятся одновременно. 

Сейчас у нас получается вот так: http://awesomescreenshot.com/0504inc370

А нужно, чтобы было вточности как на стандартных картах: http://awesomescreenshot.com/0104inbf4d

 

Возможно ли такое реализовать? 

Наш сайт: http://169.ru/kontakty

 

Всем, большое спасибо!

2 комментария
Как отловить событие открытие tab'ов у балуна кластера?
Arman
2 марта 2015, 14:02

Добрый день.

Очень много placemark'еров на карте и многие рядом друг с другом, использую Clusterer для группировки, вроде все работает.

На placemark'еры, через "placemark.events.add('balloonopen', myFun);", повесили событие — работает.

Но вот при открытии через Clusterer функция не запускается. Пробовал повесить событие на clusterer.balloon.events.add('open', myFun); но запускается только когда открывается Балун, а когда меняешь табы в балуне функция не работает.


Вопрос: Как отловить событие открытия таба балуна кластера? Мне нужно "balloonContent" передать функции, с placemark работает, с табами нет.

Спасибо.

2 комментария
метка,кластеризатор,события,API 2.1,балун
Удаление маршрута при закрытии балуна
Fumerok
2 марта 2015, 15:44

только начинаю осваивать API Яндекс.Карт 2.0, сделал код для расчета пути и времени в пути, который должен выводиться в балуне при клике на метки, но к сожалению строится маршрут только до одной метки, в чем может быть проблема? =С

    <script type="text/javascript">

        var myMap, route;

        ymaps.ready(init);

 

//Определение начальных параметров карты

        function init () {

    var geolocation = ymaps.geolocation,

        coords = [geolocation.latitude, geolocation.longitude],

        myMap = new ymaps.Map('map', {

            center: coords,

                    zoom: 12,

behaviors: ["scrollZoom","MultiTouch"],

                }, {

 

                    balloonMaxWidth: 600

                });

 

//Добавляем элементы управления

searchControl = new SearchAddress(myMap, $('form'));

var trafficControl = new ymaps.control.TrafficControl();

myMap.controls                

                .add('zoomControl')     

.add('trafficControl')

                .add('typeSelector')    

                .add('mapTools');

 

//Запрос данных и вывод маркеров на карту

$.getJSON("vivodpointsmap.php",

function(json){

for (i = 0; i < json.markers.length; i++) {

 

var myPlacemark = new ymaps.Placemark([json.markers[i].lat,json.markers[i].lon], {

                    // Свойства

                    iconContent: json.markers[i].icontext, 

hintContent: json.markers[i].hinttext,

balloonContentHeader: json.markers[i].balloontexthead,

                    balloonContentBody: json.markers[i].balloontext                   

}, {

                    // Опции

                    preset: json.markers[i].styleplacemark

                });

 

// Добавляем метку на карту

myMap.geoObjects.add(myPlacemark);

 

}

 

myPlacemark.events.add('click', function () {

var start = [geolocation.latitude, geolocation.longitude];

 

var end = myPlacemark.geometry.getCoordinates(); 

 

 ymaps.route([

[start], [end]], {

mapStateAutoApply: true,

avoidTrafficJams: true,

 }).then(function (router) {

 

route && myMap.geoObjects.remove(route);

route = router;

myMap.geoObjects.add(route);

x=Math.round(route.getJamsTime()/60);

x = x + 4;

myPlacemark.properties.set('balloonContentFooter','Примерное расстояние до Вас: '+route.getHumanLength()+'<br/>Примерное время ожидания: '+x+' мин.');

}

);

});

 

});

   myMap.geoObjects.add(

        new ymaps.Placemark(

            coords,

            {

iconContent: 'Я',

hintContent: 'Мое местоположение'

            }

        )

    );

        }

    </script>

6 комментариев
метка,события,API 2.0,балун
Масштабирование/позиционирование в Static API
vctr78
2 марта 2015, 16:26

http://static-maps.yandex.ru/1.x/?l=map&pt=88.201014,69.349039,vkgrm~135.057732,48.472584,vkgrm~-115.139963,36.171906,vkgrm~34.512599,28.514466,vkgrm~55.308823,25.269516,vkgrm~103.861048,13.361185,vkgrm~-0.127201,51.506415,vkgrm~-97.742982,30.267589,vkgrm~101.634152,56.151382,vkgrm~-72.7027625,18.33977171593601,pm2blm~14.13371422222219,49.3049542473652,pm2blm~34.58264325,57.8775692264984,pm2blm~32.69349756250011,47.87178981228008,pm2ntm~55.50259533333334,57.8775692264984,pm2blm~53.49560666666666,53.931912090647735,pm2blm~85.38112766666669,53.931912090647735,pm2blm~131.484375,43.772507270260114,pm2blm~161.015625,52.98369558165638,pm2blm~55.308823,25.269516,flag~158.655954,69.349039,vkbkm~-115.139963,13.361185,vkbkm~21.757995499999993,41.355112000000005,vkbkm&ll=21.757995499999993,41.355112000000005&spn=273.79591700000003,55.987854000000006

Черными метками отмечены центр и крайние точки. spn вычислен по ним же. Если убрать spn - та же картина. Если добавить z с любым значением, ничего не меняется. Если убрать spn и добавить z,то масштаб меняется, но нет подходящего, кроме z=1, но это та же самая картинка. 
Смущает серая полоса сверху - как от нее избавиться? Если от нее невозможно избавиться, то как выяснить, будет ли она или нет(как я понимаю, так будет при z=1 - как выяснить значение z, установленное автоматически?), чтобы выставить size - для обрезки лишнего?

П.С.: Я уже писал менее внятно сформулированный аналогичный вопрос, но видимо в ветках комментариев он затерялся для ответа. Он по-прежнему актуален.  

1 комментарий
масштаб,Static API
Скрытие балуна
vctr78
2 марта 2015, 16:29

Балун-панель, balloonCloseButton:false. Всё ок, но при или большом, или резком зуме балун закрывается. Как можно не допускать такое скрытие?

2 комментария
API 2.1,балун-панель,панель,балун
Получение близлежайших улиц
threezero
2 марта 2015, 17:40

Насколько решаема такая задача - дана координата(центр окружности) и растояние от неё(радиус). Возможно получить все улицы из этой окружности? Можно как-нибудь упростить - например, окружность до квадрата и тд.

1 комментарий
Как найти ближайшую метку среди объектов добавленных в objectManager
Елена Савкина
2 марта 2015, 19:51

Добавил на карту объекты через objectManager.

Затем через geolocation нахожу положение пользователя и пытаюсь найти ближайший к пользователю объект из добавленных в objectManager


var geolocation = ymaps.geolocation;
geolocation.get({
    provider: 'auto',
    autoReverseGeocode: true
}).then(function (res) {
    var firstGeoObject = res.geoObjects.get(0),
        bounds = firstGeoObject.properties.get('boundedBy');

    console.log(self.objectManager.objects.getClosestTo(firstGeoObject));

    self.map.setBounds(bounds, {
        checkZoomRange: true
});
});
Но ничего не получаю, как можно решить эту задачу?
2 комментария
Обновляются ли события?
mister.smu
3 марта 2015, 14:12

Вешаю несколько обработчиков событий на метки в менеджере объектов, а также на саму карту. Но не удаляю повешенные ранее. Будет ли происходить какое-то дублирование (к примеру как в случае нескольких setTimeout-ов?). Примерный код такой, он вызывается несколько раз в течении определенного времени(переинициализация)

objectManager.objects.events.add('click', function (e) {....}

Отсюда вопрос- не скажется ли это на быстродействии, и надо ли удалять прежние евенты перед навешиванием новых?

При тестировании нашел что они не дублируются(ураа!), но может быть существуют потери в производительности?

 

1 комментарий
метка,события
Переключение 2.1
a.chebotareov
3 марта 2015, 16:16

Мы переключили api-maps.yandex.ru/2.1 на версию API 2.1.22. Если вы хотите продолжить использование предыдущей версии, указывайте api-maps.yandex.ru/2.1.20

Пожалуйста, прочтите статью о системе версионирования API.

Команда разработчиков API Яндекс.Карт

1 комментарий
обновление,API 2.1,новости
Не выпадает список подсказок SearchControl
amdx
3 марта 2015, 16:29

 Реализую поиск по своим объектам, создал класс провайдера, переписал метод geocode - все работает, по нажатию на кнопку список выводится, по объектам прыгает и т.д.

Теперь новая задача - нужно вывести подсказки при вводе, добавил к тому же классу метод suggest, создал все нужные структуры и вернул Promise - подсказок нет.

 В отладчике все норм, структуры создаются и ничего не падает. Почему же не работает?


for (var i = 0, l = points.length; i < l; i++) {
var point = points[i];
var text = point["gosnomer"];
struct[i] = {};
struct[i].displayName = text;
struct[i].value = text;
}
var deferred = new ymaps.vow.defer();
deferred.resolve(struct);
return deferred.promise();

...
...

searchV = new ymaps.control.SearchControl({
options: {
noPlacemark: true,
provider: new CustomSearchProvider(vehicle_list),
placeholderContent: 'Номер автомобиля',
size: 'large',
position: { right: 48, top: 10 }
}
});
myMap.controls.add(searchV);
}

 

 

 

5 комментариев
Построение маршрутов "на автомате" с "подстраховкой" в виде ручного ввода. Yandex API 2.1
alexsp2007
3 марта 2015, 17:54

Это мой первый опыт строительства карты, не претендую на оригинальность. Не бить и не оскорблять. Опыт брал в свободных источниках, компилировал и "допиливал".
Задача: от местоположения пользователя, которое сервис геолокации определяет автоматически, строим маршрут до каждого отдельного объекта (на каждой отдельной странице сайта).

Вот как это выглядит: жмите кнопку "Схема проезда" http://comfort.маршрут22.рф/index.php?route=product/product&path=18&product_id=28
Сразу понятно, что конечная точка маршрута неизменна для каждого объекта, поэтому она задается в БД и выводится через переменную в скрипты Яндекс.Карт

Код с небольшими комментариями

navigator.geolocation.getCurrentPosition(showMap, handleError);
// сначала определение местоположения пользователя, далее варианты сценария в случае типичных ошибок

function handleError(err) {
document.getElementById('map').innerHTML = err.message;
myCoords = [53.35, 83.76];
myZoom = 10;
ymaps.ready(init);
console.log(err);
}

// теперь задаем вариант развития событий в случае успешного определения местоположения

var myMap, route;
var myCoords = [];
var myZoom = 10;
function init () {
myMap = new ymaps.Map('map', {
center: myCoords,
zoom: 10,
controls: ['smallMapDefaultSet']
});
}

function showMap(position) {
if (position == undefined) {
myCoords = [51.3760, 83.5803];
myZoom = 10;
} else {
myCoords.push(position.coords.latitude);
myCoords.push(position.coords.longitude);
myZoom = 16;
}
/*ymaps.ready(init)*/;

// этот фрагмент пришлось закомментировать в данном примере, так как на сайте выводится 2 карты, и в диалоговом окошке
// выпрыгивало 2 карты

// если геолокация успешно "засекла" пользователя, то вариант № 1:

$('#search_route').submit(function () {
var start = [position.coords.latitude, position.coords.longitude];
var end = [<?php echo $geolocation; ?>];
// вот эта команда на PHP [<?php echo $geolocation; ?>] выводит геокоординаты из базы данных сайта

ymaps.route([
// При построении маршрута "посещаем" заданные точки
[start], [end]], {
// Опции маршрутизатора
mapStateAutoApply: true // автоматически позиционировать карту
}).then(function (router) {
route && myMap.geoObjects.remove(route);
route = router;
myMap.geoObjects.add(route);
$("#resmarshrut").append('Расстояние: '+route.getHumanLength());
$("#time").append('
Время в пути: '+route.getJamsTime()/60+' мин.');
}, function (error) {
alert("Возникла ошибка: " + error.message);
});
return false;
});

// если геолокация не работает либо очень сильно ошибается, пользователю предлагаем вручную ввести свой адрес - вариант № 2
$('#search_route2').submit(function () {
var start2 = $("#start2").val();
var end2 = [<?php echo $geolocation; ?>];
ymaps.route([
// Список точек, которые необходимо посетить
[start2], [end2]], {
// Опции маршрутизатора
mapStateAutoApply: true // автоматически позиционировать карту
}).then(function (router) {
route && myMap.geoObjects.remove(route);
route = router;
myMap.geoObjects.add(route);
$("#resmarshrut2").append('Расстояние: '+route.getHumanLength());
$("#time2").append('
Время в пути: '+route.getJamsTime()/60+' мин.');
}, function (error) {
alert("Возникла ошибка: " + error.message);
});
return false;
});
}


В таком виде это заработало!
Теперь HTML (учитываем то, что карта вызывается в диалоговом (некоторые говорят - модальном) окне ):
<code><a class="button" href="#" data-reveal-id="myModal">Схема проезда</a>
           
        <div id="myModal" class="reveal-modal">
        <div class="hero-unit">
        <div class="container-fluid">
            <div class="row-fluid">
                <div class="span9" style="line-height:20px;">
                    <p class="lead" style="color: #08C; margin: 10px 0px 5px;"><strong>Построение маршрута от Вас до выбранного объекта</strong></p>
                </div>
            </div>
           
            <div class="row-fluid" style="line-height:10px;">
                <div class="btn-toolbar">
                    <table width="98%" border="0" cellpadding="0">
                    <tbody>
                    <tr>
                    <form id="search_route"><td width="205"><input type="submit" class="btn btn-success" value="Проложить маршрут"/></td>
                    <td><div id="resmarshrut" style="margin: 10px 0px 5px;"></div></td>
                    <td><div id="time" style="margin: 4px 0px 8px;"></div></td>
                    </form>
                    </tr>
                    </tbody>
                    </table>
                </div>
            </div>
           
            <div class="row-fluid">
                <div id="map"></div>
            </div>
            <form id="search_route2">
     <p class="lead" style="color: #EA4A1E; margin: 10px 0px 5px;"><strong>Если произошла ошибка, введите свой почтовый адрес в этой строке </strong></p>       
<table width="98%" border="0" cellpadding="0">
<tbody>
<tr>
<td width="185">
<input id="start2" type="text" value="Здесь укажите адрес" style="width: 350px; margin: 10px 0px 5px;">
</td>
<td width="360">
<input type="submit" class="btn btn-danger" value="Проложить маршрут"/>
</td>
</tr>
<tr>
<td width="300">
<div id="time2" style="margin: 10px 0px 5px; font-size: medium;">
</td>
<td width="230">
<div id="resmarshrut2" style="margin: 10px 0px 5px; font-size: medium;"></div>
</td>
</tr>
</tbody>
</table>
</form>
        </div>
    </div>
            <a class="close-reveal-modal">&#215;</a>
        </div>
</code>

CSS и дополнительный Джава-скрипт для вывода окошка не буду описывать.
и так много слов.

Нет комментариев
Как выводить baloon по клику?
Denissia
3 марта 2015, 18:10

Сделал тепловую карту на основе модуля heatmap на http://host.smartspb.net/heatmap6.html. Кроме добавления и отображения данных в самом heatmap, подключил кластеризатор, добавляемый через map.geoObjects.add(objectManager). В результате у меня на карте "каша" из кластеризованных балунов и собственно heatmap, что выглядит, естественно, ужасно. При этом это единственный известный мне вариант, при котором на тепловой карте можно просмотреть подробную информацию о данной точке.

 Вопрос: как можно сделать так, чтобы была видна только тепловая карта, а baloon и/или hint были видны только при нажатии/mouseover географической точки? Или какие существуют другие способы по клику вывести информацию по точке?

 

4 комментария
API 2.1,события,heatmap,балун,метка,кластеризатор
Как скрыть оставшуюся часть карты?
Антоний Великий
4 марта 2015, 02:48

Всем доброго времени суток! 

Я так и не понял, как сделать маску вокруг определённой региона\области что бы скрыть все остальное.

Прошу не кидайтесь ссылкой на пример. Я его вторые сутки понять не могу. Там слишком все громоздко.

Пожалуйста!!! Напишите пример маски (или хотя бы ткните пальцем в строчку кода из примера, в которой есть нужная мне информация) для любого региона\области.

 

Вот код уже готового, выделенного региона (вокруг него надо все спрятать):

ymaps.geoQuery(ymaps.regions.load("RU", {
    lang: "ru",
    quality: 3
})).search('properties.hintContent = "Самарская область"').setOptions('fill', false).addToMap(map);

 

Заранее всем спасибо!

3 комментария
regions,API 2.1,API 2.0,geoQuery
Помогите с кодом определения
APSimonov
4 марта 2015, 09:37

Нужно в этот код добавить  точное  автоопределение пользователя через браузер и по айпи, спасибо

 

 

<!DOCTYPE html>

<html>

<meta http-equiv="content-type" content="text/html" charset="utf-8"> 

<title>Поиск по организациям Яндекс.Города в API</title>

<script src="http://api-maps.yandex.ru/2.1/?lang=ru_RU" type="text/javascript"></script>

<script>

ymaps.ready(init);

function init(ymaps) {

    ym = ymaps;

    myMap = new ym.Map('ppoapi', {

        center: [51.899422440866765, 51.645378023386],

        zoom: 10,

        controls: ['searchControl', 'smallMapDefaultSet', 'fullscreenControl']

    });

    

    searchControl = myMap.controls.get('searchControl');

    

    // Опция устанавливает для контрола провайдер 

    // данных поиска по организациям.

    

    searchControl.options.set('provider', 'yandex#search');

    

  myMap.controls.add(searchControl);

       

}

 

</script>

 

<div id="ppoapi"; style="width:770px; height:500px"></div>

  </body>

</html>

1 комментарий
control.ListBox странно себя ведет
Mike
4 марта 2015, 14:54

добрый день!

добавил списки городов и все вроде куда-то переходит, но

в firefox переходит по клику в спике на нужный город, а в chrome и opera

не совпадает элемент списка с местом куда ехать

 

что я делаю не правильно?

страничка с картой

7 комментариев
API 2.1,элементы управления,контролы,выпадающий список
scrollZoom смещает центр карты
rel-tr
4 марта 2015, 16:55

Как сделать так, чтобы при увеличении/уменшении карты колесом мыши не смещался ее центр?

6 комментариев
Как в api получить текущий слой или отловить событие смены слоя пользователем?
SerenaN
5 марта 2015, 00:43

В куки записываю текущее положение, а тип карты не могу вытащить.

2 комментария
Как вытащить координаты метки из отдельной функции
Fumerok
5 марта 2015, 12:36

Добрый день, подскажите как можно вытащить координаты метки, которая генерируется с помощью поиска по карте? Хочу передать эти координаты в переменную для определения машрута от этой метки до одной из существующих.

 

var mypoint = SearchAddress.MapView();

var start = mypoint;

 

метка формируется в функции SearchAddress.MapView() насколько я понимаю, но там идет работа с прототипами и из-за этого не могу понять как сделать.

Вот код поиска по адресу (код не мой, брал из свободного источника)

 


function SearchAddress(map, form) {

    this._model = new SearchAddress.Model(map);

    this._formView = new SearchAddress.FormView(form);

    this._mapView = new SearchAddress.MapView(map);

 

    this._attachHandlers();

}

 

SearchAddress.prototype = {

    constructor: SearchAddress,

    _attachHandlers: function () {

        this._formView.events

            .on('searchrequest', $.proxy(this._onSearchRequest, this));

    },

    _detachHandlers: function () {

        this._formView.events

            .off();

    },

    _onSearchRequest: function (e) {

        var promise = this._model.search(e.query);

 

        this._mapView

            .clear();

 

        promise.then(

            $.proxy(this._onSearchSuccess, this),

            $.proxy(this._onSearchError, this)

        );

    },

    _onSearchSuccess: function (result) {

        if(this._model.getResult()) {

            this._mapView

                .render(result);

        }

        else {

            this._formView

                .showMessage("Ничего не найдено.");

        }

    },

    _onSearchError: function (e) {

        this._formView.showMessage(

            this._model.getError()

        );

    },

    getModel: function () {

        return this._formModel;

    }

};

 

SearchAddress.MapView = function (map) {

    this._map = map;

    this._point = null;

};

 

SearchAddress.MapView.prototype = {

    constructor: SearchAddress.MapView,

    render: function (results) {

        var metaData = results.metaData.geocoder,

            result = results.geoObjects.get(0),

            balloonContent = '<p><small>по запросу:</small>&nbsp;<em>' + metaData.request + '</em></p>' +

                '<p><small>найдено:</small>&nbsp;<strong>' + result.properties.get('text') + '</strong></p>';

 

        this._point = new ymaps.Placemark(result.geometry.getCoordinates(), {

            balloonContentBody: balloonContent

        });

 

        this._map.geoObjects

            .add(this._point);

 

        this._setMapBounds(result.properties.get('boundedBy'));

 

        return this;

    },

    clear: function () {

        if(this._point) {

            this._map.geoObjects

                .remove(this._point);

            this._point = null;

        }

 

        return this;

    },

    getPoint: function () {

        return this._point;

    },

    _setMapBounds: function (bounds) {

        this._map.setBounds(bounds, {

            checkZoomRange: true,

            duration: 200,

            callback: ymaps.util.bind(this._onSetMapBounds, this)

        });

    },

    _onSetMapBounds: function () {

        this._point.balloon

            .open();

    }

};

 

SearchAddress.FormView = function (form) {

    this._form = form;

    this._controls = form.find('.control-group');

    this._message = form.find('.help-inline');

    this._input = form.find('.search-query');

 

    this.events = $({});

 

    this._attachHandlers();

};

 

SearchAddress.FormView.prototype = {

    constructor: SearchAddress.FormView,

    _attachHandlers: function () {

        this._form

            .on('submit', $.proxy(this._onFormSubmit, this));

        this._input

            .on('keydown', $.proxy(this._onInputChange, this))

            .typeahead({

                source: $.proxy(this._dataSource, this),

                items: this.getSuggestConfig().limit,

                minLength: 3

            });

    },

    _detachHandlers: function () {

        this._form

            .off("submit");

        this._input

            .off();

    },

    _onFormSubmit: function (e) {

        e.preventDefault();

 

        var value = this._input.val();

 

        if(value) {

            this.events.trigger($.Event('searchrequest', {

                query: value

            }));

        }

        else {

            this.showMessage('Задан пустой поисковый запрос.');

        }

    },

    _onInputChange: function (e) {

        this.hideMessage();

    },

    showMessage: function (text) {

        this._controls

            .addClass('error');

        this._message

            .removeClass('invisible')

            .text(text);

    },

    hideMessage: function () {

        this._controls

            .removeClass('error');

        this._message

            .addClass('invisible')

            .text('');

    },

    _dataSource: function (query, callback) {

        var config = this.getSuggestConfig(),

            request = $.extend({ query: query }, config);

 

        $.ajax({

            url: config.url,

            dataType: 'jsonp',

            data: request,

            context: this,

            success: function (json) {

                var results = [];

 

                for(var i = 0, len = json.result.length; i < len; i++) {

                    var result = json.result[i],

                        parent = result.parents && result.parents[0];

 

                    results.push(

                        (parent && (parent.name + ' ' + parent.type + ', ') || '') +

                        result.type + ' ' + result.name

                    );

                }

 

                callback(results);

            }

        });

    },

    getSuggestConfig: function () {

        return {

            url: 'http://kladr-api.ru/api.php',

            contentType: 'city',

            withParent: 1,

            limit: 5,

            token: '52024d6c472d040824000221',

            key: '6cf033712aa73a4a26db39d72ea02bb682c8e390'

        };

    }

};

 

SearchAddress.Model = function (map) {

    this._map = map;

    this._result = null;

    this._error = null;

};

 

SearchAddress.Model.prototype = {

    constructor: SearchAddress.Model,

    search: function (request) {

        var promise = ymaps.geocode(request, this.getDefaults());

 

        this.clear();

 

        promise.then(

            $.proxy(this._onSearchSuccess, this),

            $.proxy(this._onSearchFailed, this)

        );

 

        return promise;

    },

    clear: function () {

        this._result = null;

        this._error = null;

    },

    _onSearchSuccess: function (result) {

        this._result = result.geoObjects.get(0);

    },

    _onSearchFailed: function (error) {

        this._error = error;

    },

    getDefaults: function () {

        return {

            results: 1,

            boundedBy: this._map.getBounds()

        };

    },

    getResult: function () {

        return this._result;

    },

    getError: function () {

        return this._error;

    }

 

};

 

 

Нет комментариев
метка,Javascript,поиск,API 2.0,геокодирование
Плагин круговых диаграмм и objectManager
Павел
5 марта 2015, 13:05

 

Кто-нибудь может уже допилил этот чудесный плагин ко встроенному кластеризатору в objectManager?

сам плагин: http://clubs.ya.ru/mapsapi/replies.xml?item_no=53340

 

 

4 комментария
метка,кластеризатор,менеджер объектов,API 2.1
Автозаполнение + номера домов
OrkShaman
5 марта 2015, 14:15

Привет, мне надо сделать автозаполнение введенного адреса, плюс номера домов по любому из автозаполненных адресов.

Подскажите вызовы static api для этого.

Если нет, то есть ли такие вызовы в  Javascript api?

2 комментария
API 2.1,саджест,геокодирование