说我有一个geojson盒子,我已经添加到传单中。如何让用户点击并拖动框"到新位置,然后自动更新所有坐标?我知道如何使用传单编辑来编辑构成形状的边界/点,但我不确定如何实际移动形状。
答案 0 :(得分:0)
Leaflet Draw有一个Leaflet.Draw.Drag plugin,允许您在进入编辑模式时移动多边形。不过,这个版本看起来确实有点挑剔。至少在一些快速实验中,我只能使用Leaflet Draw version 0.2.3使其工作。如果您有一个现有的L.GeoJson图层,则可以在绘图控件的编辑选项中将其指定为featureGroup
:
var drawControl = new L.Control.Draw({
edit: {
featureGroup: yourGeoJsonLayer,
edit: {
selectedPathOptions: {
maintainColor: true,
moveMarkers: true
}
}
}
});
在selectedPathOptions
中,maintainColor
选项会在您进行编辑时保留图层的现有样式,而moveMarkers
选项会在中间放置一个小方块标记多边形提醒您可以拖动整个事物,而不仅仅是编辑顶点。
这是一个小例子: