Apakah Leaflet memiliki opsi untuk layer yang bergantung pada skala?


8

Apakah mungkin menampilkan lapisan dengan Leaflet tergantung pada penskalaan? Misalnya tidak menampilkan kabupaten sampai tingkat zoom mencapai 10.

Jawaban:


20

ya Anda dapat mengatur skala di konstruktor:

sebagai contoh:

var layer = L.tileLayer("http://{s}.tile.page.com/map/{z}/{x}/{y}.jpg", {
        minZoom: 1,
        maxZoom: 14
    } ) ;

vektor tidak memiliki properti maks / mnt, Anda bisa menggunakan acara zoomend untuk memicu menambah atau menghapusnya, seperti:

    map.on('zoomend ', function(e) {
         if ( map.getZoom() > 13 ){ map.removeLayer( vector )}
         else if ( map.getZoom() <= 13 ){ map.addLayer( vector )}
    });

Terima kasih. Apakah ini mungkin dengan L.polygon, bukan dengan L.tileLayer? Ya, saya coba saja. Terima kasih banyak!
terhadap arus

Saya telah menambahkan bagian tentang vectorlayers
warrieka

1
Terima kasih atas jawabannya, ini bekerja dengan luar biasa! Hanya ingin menambahkan bahwa metode ini sedikit berbeda dari warrieka yang disebutkan. Harus - map.getZoom () bukan map.zoommap.on('zoomend ', function(e) { if ( map.getZoom() > 12 ){ map.removeLayer( vector )} else if ( map.getZoom() <= 12 ){ map.addLayer( vector )} });
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.