Клуб API Карт

Найдено на тему «ballon»:
placemark внутри polygon
Sergey Il`ich
13 февраля 2017, 09:33

Здравствуйте.

Рисую карту участков нашего села, участков не много, многоугольники. Хочу проставить им номера через placemark.

Как сделать, чтобы placemark размещался в центре многоугольника? И возможно, чтобы клик и по polygon, и по placemark открывал один и тот же балун? (сейчас балун у многоугольников, placemark`ов ещё нет)

5 комментариев
Polygon,Placemark,ballon
Метки с одинаковыми координатами.
Евгений
27 июня 2016, 20:47

Не получается добавить несколько меток так сказать за одну "сессию". Приходится перезагружать страницу, чтобы добавить еще одну. 

Ставим метку, сохраняем, ставим еще одну с другими координатами - сохраняем. В итоге сохраняются 2 метки в бд, НО с одинаковыми координами и у второй странный Placemark. Ломаю голову с этой проблемой. 

Вот весь код: http://codepen.io/evikza/pen/yJgoBy

В версии 2.0 все работало, переписал на 2.1, возникла данная проблема(

5 комментариев
ballon,API 2.1,Метка
Как упровлять мобилным отоброжением Балуна
Удалённый пользователь
4 июня 2016, 09:28

делаю приложения на фонгапе с яндекс картами

задача состоит в том чтобы баул открывался снизу экрана в большенстве случиев а не только когда расщирения 350 на 350

4 комментария
содержимое балуна,templateLayoutFactory,ballon
RemoteObjectManager и два вида кластеров
wiistriker.k
8 апреля 2016, 19:35

Реализовываю серверную кластеризацию. Для большого zoom карты запрашиваю только grid с количеством данных в каждой ячейке и генерирую JSON с кластерами. Конкретные объекты для построения карты не запрашиваю.

Когда пользователь приблизился к участку карты, то grid не запрашиваю, выбираю из БД уже конкретные объекты на карте и, так как ROM не поддерживает кластеризацию на стороне клиента, то пробегаюсь еще раз по массиву объектов на сервере и группирую объекты по координатам. Далее эти группы формируют уже новые кластеры.

Итого есть кластеры просто с количеством объектов для большого zoom (массив features у кластера пустой)

И кластеры с конкретными гео-объектами для отрисовки на карте. Если координаты совпадают, то такие объекты образуют кластер (массив features не пустой).

objectManager = new ymaps.RemoteObjectManager(url + '&bounds=%b', {
    geoObjectBalloonContentLayout: goodsBalloonContentLayout,
    clusterBalloonItemContentLayout: goodsBalloonContentLayout,
    clusterDisableClickZoom: true
});

Для каждого из вида кластеров хотелось бы различного поведения при клике:

1) Для кластера на большом зуме нужно делать приближение области карты

2) Для кластера конкретных гео-объектов необходимо раскрывать балун с содержимым.

Поэтому clusterDisableClickZoom: true и кастомный обработчик клика:

objectManager.clusters.events.add('click', function (e) {
    var objectId = e.get('objectId');

    if (objectId.indexOf('pc_') == 0) {
        objectManager.clusters.balloon.open(objectId);
    } else {
        var cluster = objectManager.clusters.getById(objectId);
        map.setBounds(cluster.bbox);
    }
});

Все работает, кроме того, что балун кластера пустой, несмотря на то, что параметр clusterBalloonItemContentLayout проставлен. Балун для обычной метки тоже работает.

Пробовал отключать серверную кластеризацию и сделать то же самое на LoadingObjectManager с включенной кластеризацией на клиенте - балун работает. Что я упустил?

Первый вопрос в том, куда копать по вопросу отсутствия контента в балуне?

Второй вопрос в общей концепции. Возможно, лучше использовать несколько ROM для разных zoom?

3 комментария
cluster,RemoteObjectManager,ballon
Как не сдвигать карту при открытии балуна
Mackiavelly67
18 марта 2016, 15:12

Как отучить карту сдвигаться при открытии балуна с параметром balloonPanelMaxMapArea: 'Infinity'???

http://jsfiddle.net/op31xbqr/12/

2 комментария
ballon,API 2.1,event