Добрый день!
Прошу у клуба помощи со следующей задачей:
В наличии имеем 2134 объекта {lat, lng, title} которые нужно нанести на карту. Кластеризовать не хочется, поэтому было принято решение показывать маркеры только при зуме >= 14.
Пробовал следующие методы:
1) Создавал массив GeoObject с options.visible = false, добавлял в mapInstanse а событие 'boundschange' карты проходился по geoObjects и выставлял опцию видимости, сравнивая текущий zoom c желаемым. Итог — страшно тормозит, поскольку рендерятся все маркеры даже вне текущей области видимости.
2) Пытался добавлять маркеры через ObjectManager, однако он оперирует не GeoObject а просто JSON описанием сущности, поэтому итерируя objectManager.objects я не могу выставлять options.visible. Итог — прятать маркеры по зуму не получилось.
3) Использование setFilter у objectManager с условием map.getZoom() >=14 ни к чему не привело
Подскажите пожалуйста, каким образом я могу попросить ЯндексКарты рисовать маркеры на карте только при указанном зуме с достаточной производительностью (желательно вообще рисовать маркеры только в текущей области видимости)? Вариант с запросами на сервер я стараюсь не рассматривать, потому что расходы на Ajax запрос-ответ непозволительны с точки зрения delay.
Спасибо