从OpenLayers中的选择框中获取框的边界
Get box boundaries from select box in OpenLayers
我有一个OpenLayers地图,我希望用户能够通过拖动鼠标来绘制一个框(类似于这里的示例,首先选择"select feature (0 features selected)"选项)并获得绘制框的边界。
我可以像下面这样使用smth来绘制方框,但是当地图中没有特征或没有选择特征时,它将不起作用,而这种情况肯定会发生。
new OpenLayers.Control.SelectFeature(this._layers.osm, {
multiple: true,
box: true,
hover: false,
toggleKey: 'ctrlKey',
multipleKey: 'shiftKey',
onBeforeSelect: function() {
console.log(arguments);
}
})
是否有一个简单的方法来完成这在OpenLayers或我应该做沉重的提升自己通过跟踪鼠标拖动和绘制/删除相应的多边形?
谢谢。
尝试使用"boxselectionend"
事件的SelectFeature控件(需要2.12)
但是这个事件不返回边界或所做的选择,只返回一个图层数组。
另一个选项是创建Handler。,这就是我在某些情况下所做的:
var mySelectFeature = OpenLayers.Control.SelectFeature(...);
var myHandlerBox = new OpenLayers.Handler.Box(
mySelectFeature, {
done: function(bounds) {
OpenLayers.Control.SelectFeature.prototype.selectBox.apply(
mySelectFeature, arguments);
... your code ...
}
},
{}
);
相关文章:
- 获取以屏幕像素为单位的旋转SVG元素的边界
- 如何在mongodb的边界框中获取任何项目(点,线字符串,多边形)
- SVG:获取路径的精确边界框
- 获取元素的边界框,说明其转换
- 获取没有边框的边界客户端矩形
- 从Firefox扩展中获取DOM元素的绝对屏幕边界
- 在画布上获取鼠标坐标的边界偏移
- 如何将地图的当前视口作为几何体、边界框或wkt从OpenLayers中获取
- SVG在Javascript中获取文本字符边界
- 如何在multipart/form-data - Angular中获取或设置边界
- 试图获取google daterangfilter的日期范围边界
- D3:获取选定元素的边界框
- 谷歌地图API -获取属性边界数据
- 获取HTML元素的边界框,不包括CSS转换
- 从OpenLayers中的选择框中获取框的边界
- 任何从three.js Object3D中获取边界框的方法
- 在不使用边界框的情况下获取svg路径的尺寸
- 获取滑块的边界
- 如何在HTML中获取元素的形状/多边形/边界路径/框架
- 如何在谷歌地图上获取用户对他/她绘制的边界的输入