2016-03-03 12 views
0

我有我创建的geojson功能。编辑后,我知道有一个绘制:编辑的事件。我如何得到多边形所包含的原始点,并且能否获得新的多边形点?怎么样?是否有可能知道哪些顶点已更改或添加?在小册子中编辑多边形后,如何获取修改后的原始geojson点?

我尝试以下,所有这些都不起作用:

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); 
}); 

回答

1

L.Mapdraw:created事件触发,返回一个L.LayerGroupe.layers,它包含了所有,只是已编辑的功能。这是因为您可以在按下保存按钮之前一次编辑多个功能。您可以迭代L.LayerGroup,然后获取GeoJSON:

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