繁体   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