Leaflet: как указать, при каком зуме показывать слой geojson

Mapserver, GeoServer, MapGuide, Google и другое ПО для веб-картографии
Ответить
lenny314156
Интересующийся
Сообщения: 35
Зарегистрирован: 27 июл 2013, 21:47
Репутация: 6

Leaflet: как указать, при каком зуме показывать слой geojson

Сообщение lenny314156 »

Собственно, вопрос в заголовке. Хочу, чтобы объекты geoJSON начинали показываться при определенном уровне зума, а не на всех сразу. Как бы это сделать? minZoom и maxZoom, как я понял, слой такого типа не имеет?
lenny314156
Интересующийся
Сообщения: 35
Зарегистрирован: 27 июл 2013, 21:47
Репутация: 6

Re: Leaflet: как указать, при каком зуме показывать слой geo

Сообщение lenny314156 »

Нашел на просторах сети такой вариант решения:

Код: Выделить всё

map.on('zoomend ', function(e) {
         if ( map.zoom > 13 ){ map.removeLayer( vector )}
         else if ( map.zoom <= 13 ){ map.addLayer( vector )}
    });
Как я понимаю (не очень силен в JavaScript), vector здесь - название слоя, ранее объявленного в var, но проблема в чем - опытным путем добавления еще одного условия

Код: Выделить всё

else {alert('что-нибудь')}
выяснил, что не выполняется проверка на map.zoom ><= 13, т.к. при любом изменении зума я вижу этот алерт:( Может проблема в разных типах данных, может еще в чем, подскажите плиз...
V.Maxim
Участник
Сообщения: 62
Зарегистрирован: 14 фев 2012, 16:07
Репутация: 13

Re: Leaflet: как указать, при каком зуме показывать слой geo

Сообщение V.Maxim »

судя по всему, map.zoom это просто переменная, которая вызывает map.getZoom() для определения текущего зума (описание)
посмотрите дополнительные плагины, например это
а такая вставка без остального кода работать и не будет..
Ответить

Вернуться в «Веб-картография»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя