Клуб API Карт

Определение объекта из objectManager по координатам

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

Здравствуйте, в общем нужно по определенному событию сменить иконку метки загруженной из objectManager зная только её точные координаты. Подскажите пожалуйста как это сделать?

5 комментариев
Центр Недвижимости
27 января 2016, 22:28

Перефразирую:

Как узнать objectId зная его координаты?

А если по этим координатам будет 2 метки.

Лучше все же использовать objectId

Центр Недвижимости
27 января 2016, 22:28

В том то и дело что не будет 2 х меток. Дубли специально убираются и показывается только первая метка из всех с одинаковыми координатами. Например:

есть 3 объекта по одному адресу, на карте мы показываем только первый. Но как определить где находится объект №2 и №3? Его id нет на карте но извесны его координаты...

У вас есть исходный объект, который передаете в ОМ. Можно искать в нем с помощью JavaScript

Центр Недвижимости
27 января 2016, 22:28

В общем не подумал о следующем, если например карта еще не запускалась в ОМ может и не быть еще вовсе этого объекта... o_O

 

По этому поступил проще:

Сначала удаляем имеющиеся точки по определенным координатам, затем добавляем новую с такими же координатами и необходимой нам меткой....

objectManager.objects.remove([
                    {
                        type: 'Feature',
                        geometry: {
                            type: 'Point',
                            coordinates: [cord_x, cord_y]
                        }
 }]);
 objectManager.objects.add({
                        type: 'Feature',
                        id: idad,
                        geometry: {
                            type: 'Point',
                            coordinates: [cord_x, cord_y]
                        }
});