Leaflet: обнаружение попытки увеличения при минимальном увеличении и постоянном уровне плитки при увеличении - PullRequest
0 голосов
/ 07 марта 2019

Я использую свои собственные плитки для негеографических приложений и пытаюсь реализовать внутреннюю логику масштабирования, которая, как предполагается, не зависит от сервера плиток, но использует обнаружение масштабирования Leaflet.

old layer, zoom level: 2 -> ZOOM IN, load another tile layer  -> new layer, zoom level: 2
new layer, zoom level: 2 <- ZOOM OUT, load another tile layer <- old layer, zoom level: 2

Это можно сделать вручную, удалив старую настройку слоя map.setZoom(oldZoom) при увеличении.Однако при этом уровень масштабирования будет временно изменен на 1, а старый слой будет удален только после анимации масштабирования.

map.on('zoom', testZoom);  

function testZoom() {
         if(newZoom == 1 && prevZoom == 2) {
            map.setZoom(2);
            map.removeLayer(activeTileLayer);
            map.addLayer(newLayer);
          }
}

Подход может заключаться в обнаружении , когдапользователь пытается изменить масштаб на minZoom, но я не выяснил, как это возможно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...