Sono giorni che cerco di risolvere il mio problema.Come consentire la modifica di una sola funzione/poligono alla volta con Leaflet?
Ho uno strato poligono da un GeoJSON. Voglio modificare i miei poligoni con l'evento click. Quando clicco su un poligono diventa modificabile, ma quello che voglio è che quando clicco su un altro poligono, il primo poligono non è più in modalità modificabile.
OpenLayers ma naturalmente non Leaflet.
Ecco un estratto dal mio codice:
var editableLayers = new L.FeatureGroup().addTo(map);
var polygon_json;
$.ajax({
type: "GET",
dataType: "json",
url: "get_json.php",
success: function (response) {
meaux_json = L.geoJson(response, {
onEachFeature: onEachFeature
});
}
});
//edit the targeted polygon
function onEachFeature (feature, layer) {
editableLayers.addLayer(layer);
layer.on('click', function(e){
e.target.editing.enable();
});
}
Una persona è stata in grado di farlo, ma io sto avendo difficoltà a capire come: https://github.com/dwilhelm89/Ethermap
Quando faccio clic su un poligono/polilinea nella demo, diventa modificabile. Quindi quando clicco su un altro poly nella tua demo, la modifica sul primo è disabilitata e il 2 ° poligono è abilitato per la modifica. Sembra che funzioni come vuoi adesso. –
grazie per la risposta ma non è la mia demo, è un'altra persona che l'ha fatto non io ^^, e non so come. – Revocyl
Ehi. Potete per favore postare l'intero codice (compresi i controlli di disegno dell'opuscolo?) Cerco di fare qualcosa di simile ma sono bloccato. – user1919