OpenLayers选择修改功能

时间:2014-12-04 13:41:37

标签: javascript openlayers

我尝试在openlayers中为修改功能控件添加一个选择框。实际上,我使用带按钮的控制面板"修改功能",当我点击它时,我可以点击一个功能并修改这些顶点。

使用"选择"控制,可以添加一个框来选择功能..但是我将这个控件用于其他任务。

是否有一种简单的方法可以将选择框添加到修改功能控件? (它是选择路径的)

1 个答案:

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