我在openlayer 3中添加了一些叠加层。如果我点击ctrl +鼠标左键单击并拖动鼠标在地图上选择一个矩形区域,我需要在该特定区域中列出叠加层吗?
答案 0 :(得分:1)
是的,可以使用DragBox元素。
这样你就可以声明元素:
var dragBox = new ol.interaction.DragBox({
condition: ol.events.condition.platformModifierKeyOnly
});
您可以将其添加为现有地图的互动:
map.addInteraction(dragBox);
如果你想添加一些行为,可以调用事件boxstart和boxend:
dragBox.on('boxstart', function() {
// Your stuff when the box starts being drawn
});
dragBox.on('boxend', function() {
// Your stuff when the box is already drawn
});
您可以在OpenLayers 3 API中找到更多信息:http://openlayers.org/en/latest/apidoc/ol.interaction.DragBox.html
您还可以在此处查看Box Selection示例:https://openlayers.org/en/latest/examples/box-selection.html