如何在传单中移动geojson多边形?

时间:2016-04-08 04:41:34

标签: leaflet

说我有一个geojson盒子,我已经添加到传单中。如何让用户点击并拖动框"到新位置,然后自动更新所有坐标?我知道如何使用传单编辑来编辑构成形状的边界/点,但我不确定如何实际移动形状。

1 个答案:

答案 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选项会在中间放置一个小方块标记多边形提醒您可以拖动整个事物,而不仅仅是编辑顶点。 这是一个小例子:

http://fiddle.jshell.net/nathansnider/qk5bsgn8/