我尝试在openlayers中为修改功能控件添加一个选择框。实际上,我使用带按钮的控制面板"修改功能",当我点击它时,我可以点击一个功能并修改这些顶点。
使用"选择"控制,可以添加一个框来选择功能..但是我将这个控件用于其他任务。
是否有一种简单的方法可以将选择框添加到修改功能控件? (它是选择路径的)
答案 0 :(得分:0)
我不相信,如果您要问的话,可以将多个功能修改为一次,但如果您想一次选择多个功能,可以使用如下边界框,
boundingBox = new ol.interaction.DragBox({
condition: ol.events.condition.altKeyOnly,
style : new ol.style.Style({
fill : new ol.style.Fill({
color : 'rgba(0, 0, 0, 0.1)'
}),
stroke : new ol.style.Stroke({
color : '#00FF00',
width : 2
}),
})
});
//Add bounding box interaction
map.addInteraction(boundingBox);
//Add Event Listener for end of bounding box drag.Each feature, featureForPass, will be passed to callBackFunction
boundingBox.on('boxend', function(e){
var bbBoxExtent = boundingBox.getGeometry().getExtent() ;
yourLayer.getSource().forEachFeatureInExtent(bbBoxExtent,callBackFunction,featureForPass)
})