我在 openlayer 中添加了一些叠加层 3.Is 如果我单击 ctrl+鼠标左键单击并拖动鼠标在地图上选择一个矩形区域,我需要获取该特定区域中列出的叠加层?
是的,可以使用 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
您还可以在此处查看"框选择"示例:https://openlayers.org/en/latest/examples/box-selection.html