OpenLayers 3 获取列表中所有功能内容的范围

OpenLayers 3 get extent of all feature contents in a list

我想放大列表中包含的所有要素的范围。

首先,我将我的功能放在一个列表中:

selectedFeatures = [];    
vector2.getSource().forEachFeature(function(feature) {
                var att = feature.get("NOM");
                if (att == strUser) {
                    selectedFeatures.push(feature);
                    }
                });

其次,这是我的问题...我想放大列表中所有功能的范围 "selectedFeatures"

我试过这个,但总是 return 我无限大:

var vectorSource = new ol.source.Vector({
        projection: 'EPSG:3857',
        features: selectedFeatures //add an array of features
        });

var dataExtent = vectorSource.getExtent();
map.getView().fitExtent(dataExtent, map.getSize())
console.log("Extents : " + dataExtent);

有人有解决方案来获取列表中包含的要素的范围吗?

这应该可以解决问题吗?

var extent = features[0].getGeometry().getExtent().slice(0);
features.forEach(function(feature){ ol.extent.extend(extent,feature.getGeometry().getExtent())});