我可以使用Leaflet Draw在叠加层上添加层吗?

时间:2019-05-13 13:26:55

标签: leaflet leaflet.draw

是否可以为Leaflet Draw工具栏添加“目标叠加”? 例如,我可以有两个叠加层,例如“区域”和“兴趣点”。 现在,我只想向“兴趣点”叠加层和“区域”叠加层上的多边形添加标记。

我一直在尝试找出以某种方式可以以编程方式激活叠加层或为不同的绘图工具栏分配叠加层,但似乎无济于事。 所有新图层都添加到相同的叠加层,因为我不知道使用了哪个叠加层工具栏。

至少事件的控制台日志值似乎无济于事,而且我无法弄清楚使用了哪个工具栏(我可以使用它来强制addLayer过度使用某些工具),我无法获得有关目标层的任何信息等

 var poiLayer = new L.FeatureGroup();
var areaLayer = new L.FeatureGroup();

var options = {
  polygon: {
    allowIntersection: false,
    drawError: {
      color: "#e1e100",
      message: "<strong>Lines of a polygon cannot overlap!</strong>"
    },
    shapeOptions: {
      color: "#FF5656"
    }
  },
  polygon: {
    allowIntersection: false,
    drawError: {
      color: "#e1e100",
      message: "<strong>Lines of a polygon cannot overlap!</strong>"
    },
    shapeOptions: {
      color: "#FF5656"
    }
  },
  edit: {
    featureGroup: areaLayer,
    poly: {
      allowIntersection: false
    },
    poly: {
      allowIntersection: false
    },
    poly: {
      allowIntersection: false
    }
  },
  draw: {
    featureGroup: areaLayer,
    name: "dafuq2",

    polygon: {
      allowIntersection: false,
      showArea: true
    },


  },
  name: "namne123123123"
};

//same for the poiLayer

    var drawControl = new L.Control.Draw(options);
map.addControl(drawControl);

var drawControl2 = new L.Control.Draw(options2);
map.addControl(drawControl2);
map.on(L.Draw.Event.CREATED, function(e) {

  console.log(e);
});

0 个答案:

没有答案