Клуб API Карт

Поиск объекта по параметрам с последующим открытием балуна.

grishkashishka
16 декабря 2012, 10:30

На карте имеется порядка 200-300 объектов, которые запиханы в кластер. Необходимо реализовать открытие балуна по клику на ссылке и соответственно центровку на данном объекте (клик по объекту). Как данное действо осуществить?

Я так понимаю необходимо перебирать все объекты в кластере на наличие определенных параметров?

7 комментариев
Подписаться на комментарии к посту

Да. Вот пример того как можно связать объекты в кластере со своей версткой.

 

Может я что не правильно делаю... В общем какой алгоритм:

1. Создаю новый плэйсмарк

2. добавляю в большой массив плэйсмарков. +добавляю в массив плэйсмарков для кластера (после добавлнения в кластер - этот массив чистится)

3.далее пробегаю по большому массиву с плэйсмарками. нахожу необходимый мне плэйсмарк. Пытаюсь вызвать эмуляцию клика, или просто вызываю ф-ю открытия балуна - ничего не происходит... я так подозреваю что это не правильный метод и надо бежать через геобъекты карты, если так то как сделать? перебор геобъектов выдает кластеры, которые я добавил... а как добраться до точек х.з.

Не могу уловить суть поиска в примере... :( Там вроде тоже пробегались по массиву точек, которые не добавлены в кластер... или я что-то не догнал? :)

 (после добавлнения в кластер - этот массив чистится)

зачем? достаточно одного массива

 

Не могу уловить суть поиска в примере... :( Там вроде тоже пробегались по массиву точек, которые не добавлены в кластер... или я что-то не догнал? :)

это исходный массив добавленный в кластеризатор

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

у меня МапМенеджер... первый массив, который добавляется - создается и уничтожается соответственно в функции... а ф-я может быть вызвана несколько раз. соответственно необходимо так же иметь массив со всеми точками... и все же - вы не сказали как добраться до объекта через массив точек... обращение вида arrayPlacemark[0].click() - на дает никаких результатов... оно и понятно, поскольку это фактчиески не обработаные данные, а добавленные данные хранятся где-то там (MyMap.geoObjects... или нет?) :)

Откуда возьмется .click()?

так вот - в том то и вопрос - как открыть балун то по ссылке? где перебирать объекты то?

Допустим делаю центровку по координатам точки из массива... Но как открыть балун этой точки? 

myMap.geoObjects.getIterator().getNext().getAll()[0].balloon.open(); - не очень хорошая идея :)

Добавил открытие балуна в пример