Клуб API Карт

Как управлять положением балуна внутри полигона ?

shopgo51
6 сентября 2016, 09:25

Здравствуйте, коллеги !
У меня следующая ситуация:
На карте есть коллекция полигонов, созданная следующей функцией:

var myCollection=[];
function polygon(groups, name) {
    
    var flag_groups = localStorage[prefix + name];
    if ((flag_groups == null) || (flag_groups == 'no'))
    {    
     localStorage[prefix + name] = 'yes' ;  
     myCollection[name] = new ymaps.GeoObjectCollection();        
    for (var i = 0; i < groups.length; i++)
    {
    myCollection[name].add( new ymaps.Polygon([                
            groups[i].coord_out,              
            groups[i].coord_in
           
    ], {
        balloonContent: "Описание участка",
        hintContent: groups[i].hint
    }, {
        fillColor: groups[i].fillColor,
        opacity: 0.55,
        strokeColor: '#000fff',
        strokeWidth: 1
    }));
    }
      myMap.geoObjects.add(myCollection[name]);    
   }
 else
  {
localStorage[prefix + name] = 'no';
      myMap.geoObjects.remove(myCollection[name]);    

  }
}

Всё отрабатывает, как описано в документации.
Вне карты есть небольшой список полигонов, выбирая из которого я перехожу на карту с полигонами так:
    
Вставки на php для определения, с какой из коллекций полигонов я работаю и получения значения для определения участка.
И вот теперь собственно описание проблемы:
1) если опустить список аргументов в функции open, балун открывается ("хвостик" балуна) в определенной вершине участка
2) если передать координаты точки, где я хочу открыть, то открывается в другой вершине, но не там, куда указывают координаты
 Как правильно задать в этом случае координаты для open, чтобы управлять положением балуна ?

5 комментариев
Подписаться на комментарии к посту
_collectionComponent._baseArrayComponent._children[i].properties._data

Это мягко говоря совсем никуда не годится. Есть документированные интерфейсы, которые надо использовать. Имена педальных полей могут меняться от версии к версии, а в продакшн-версии так и вовсе другие (или ваши пользователи не проти скачивать по паре мегабайт каждый раз?).


АПИ изучают по документации, а не тыком через инструменты разработчика.



Я пока удалил весь этот чудо-код, чтобы никто не догадался сделать также
Согласен, что это неправильно. Но проблема, как по реквизиту, связанному с полигоном, достучаться до управления положением балуна осталась. Попробую решить ее штатными средствами. Если кто знает быстрое и правильное решение, ткните меня в него.
shopgo51,
Если не устраивает как и где открывается балун на геообъекте надо использовать балун карты, открывая его в по нужным координатам с данными геообъекта
Благодарю.