Več

Kako preklopim (dodam / odstranim) plasti shapefile v Leaflet.js?


Če ustvarim plast shapefile

var ac_shpfile = new L.Shapefile ("data / AC.zip", {onEachFeature: function (feature, layer) {/ * Dodajte nekaj barv glede na funkcije shapefile * /}});

in ga nato dodajte na zemljevid, ki sem ga ustvaril

ac_shpfile.addTo (zemljevid);

Kako kasneje odstranim to plast v obliki datoteke z zemljevida? Načrtujem ustvariti še eno plast shapefile (enako shapefile, vendar z različnimi barvami) in na podlagi prikazanega uporabniškega stikala med tema dvema shapefile slojema. Kako dodam / odstranim sloje shapefile, kot je ta? Iskal sem "nasprotje"dodati k()v dokumentaciji, vendar tega ni videti enostavno?


Videti je, da je vstavljen vtičnik Leaflet ShapefileL. Oblika profilakot podaljšek L.GeoJson.L.GeoJsonizvajaILayervmesnik, vključno z metodo removeLayer ()

Dolgo rečeno, da bi to moralo delovati:

map.removeLayer (shapefile)

Oglejte si ta primer.

Glede na delček kode lahko naredite nekaj takega:

var ac_shpfile = new L.Shapefile ("data / AC.zip", {onEachFeature: function (feature, layer) {/ * Dodajte nekaj barv glede na funkcije shapefile * /}}); var baseMaps = {// "primer naslova": primer_plasti}; var overlayMaps = {"AC Shapefile": ac_shpfile}; L.control.layers (baseMaps, overlayMaps) .addTo (zemljevid);

Tako boste dobili preklopni nadzor sloja.

V nasprotnem primeru to storite v kodi, kot je navedeno zgoraj:

ac_shpfile.addTo (zemljevid); map.removeLayer (ac_shpfile)


Poglej si posnetek: Leaflet. Работа с плагинами (Oktober 2021).