我希望在使用interaction选择功能后获取坐标。选择。
我的代码片段:
var selectf = new ol.interaction.Select({
layers: [vectorLayer],
});
map.addInteraction(selectf);
selectf.on('select', function(evt) {
//here I want read coordinates of selected feature
});
我怎么做?
答案 0 :(得分:1)
选择'选择'事件,您可以使用以下方法从矢量要素中获取坐标。
select.on('select', function(event) {
console.log(event.selected[0].getGeometry().getCoordinates());
});
答案 1 :(得分:1)
@BruceWayne的答案对于从诸如geojson之类的来源获得的所有标准几何都是正确的(问题确实指定了多边形),但是如果您使用的是OpenLayers特有的非标准圆几何,则将需要特殊情况:
select.on('select', function(event) {
var geom = event.selected[0].getGeometry();
if (geom.getType() == 'Circle') {
console.log(geom.getCenter());
console.log(geom.getRadius());
} else {
console.log(geom.getCoordinates());
}
});