簡體   English   中英

在傳單中編輯多邊形后如何獲取修改后的原始geojson點?

[英]How to get modified and original geojson points after editing polygon in leaflet?

我有一個已創建的geojson功能。 編輯后,我知道有一個draw:edited事件。 如何獲取多邊形所組成的原始點,是否可以獲取新的多邊形點? 怎么樣? 是否可以知道更改或添加了哪些頂點?

我嘗試了以下方法,但所有方法均無效:

map.on('draw:edited', function (e) {
  var type = e.layerType;
  var layer = e.layer; // this is giving undefined errors

  var shape = layer.toGeoJSON() // this is undefined
  var shape_for_db = JSON.stringify(shape);
});

L.Map觸發的draw:created事件返回一個L.LayerGroup作為e.layers ,其中包含剛剛編輯的所有e.layers 這是因為您可以在按下保存按鈕之前一次編輯多個功能。 您可以迭代L.LayerGroup ,然后獲取GeoJSON:

map.on('draw:edited', function (e) {
    e.layers.eachLayer(function (layer) {
        console.log(layer.toGeoJSON());
    });
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM