几组功能:每组最多同时选择一组

时间:2015-04-14 14:56:41

标签: openlayers-3

假设我在一张地图上有两组具有不同属性的功能:功能A和功能B.我为there can be only one设置了两种功能类型的单一互动。

如果我选择一个A功能,然后选择一个B功能,则会从featureCollection中删除A功能。我怎样才能同时选中它们?我还希望最多选择每种类型的一个功能。

示例用例:

Click on A1 --> add A1
Click on A2 --> remove A1 and add A2
Click on B1 --> add B1
Click elsewhere on map -->remove A2 and B1

1 个答案:

答案 0 :(得分:0)

我建议您不要选择互动,只需创建自己的featureOverlay并根据需要添加功能。

var overlay = new ol.featureOverlay({
  style: selectedStyle
});

map.on('click', function (event) {
  var feature = map.forEachFeatureAtPixel(event.pixel, function (f) { return f;});
  // handle the add/remove logic here
  if (feature.get('group') === 'A') {
    overlay.addFeature(feature);
  } 
  // etc...
});