Openlayer 3矩形选择

时间:2017-01-08 05:46:58

标签: overlay openlayers-3 drawrectangle ol3-google-maps

我在openlayer 3中添加了一些叠加层。如果我点击ctrl +鼠标左键单击并拖动鼠标在地图上选择一个矩形区域,我需要在该特定区域中列出叠加层吗?

1 个答案:

答案 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