Фильтрация полигонов в ObjectManager для отображения на карте

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

    let cc = 0;
function updateMap(geoJson){
    objectManager.add(geoJson);
    if(++cc == 3){ checkState();};
};

function checkState () {
    melFilter = new ymaps.ObjectManager();
    osvFilter = new ymaps.ObjectManager();  
    map.geoObjects.removeAll();
    if ($('#obj_mel').prop('checked')) {
         melFilter = objectManager.setFilter('id < 100');
    };
    map.geoObjects.add(melFilter);
    if ($('#obj_osv').prop('checked')) {
         osvFilter = objectManager.setFilter('id >= 100' );
    };          
    map.geoObjects.add(osvFilter);
    };


$.getJSON('data_osv.json', updateMap);
$.getJSON('data.json',     updateMap);
$.getJSON('data_obj.json', updateMap);
$('#obj_mel').click(checkState);
$('#obj_osv').click(checkState);    

Если включен первый чекбокс (второй отключен по умолчанию), то всё нормально, выводятся объекты с id < 100. При включении второго чекбокса, объекты первого пропадают, включаются только объекты второго, хотя нужно чтобы были выведены все объекты. Если включен второй чекбокс, то первый не реагирует и не выводит объекты.


Ответы (0 шт):