gpt4 book ai didi

javascript - OpenLayers 3矢量图层上所有特征的范围?

转载 作者:行者123 更新时间:2023-12-03 12:32:31 25 4
gpt4 key购买 nike

我有一个带有基础层和矢量图层的 OpenLayers 3 map 。

this.topoLayer = new ol.layer.Vector({
source: new ol.source.Vector(),
style: style
});

var baseLayer = new ol.layer.Tile({
source: new ol.source.XYZ({
url: 'http://[…]/{z}/{x}/{y}.png',
crossOrigin: 'null'
})
});

this.map = new ol.Map({
target: 'map',
layers: [baseLayer, this.topoLayer],
view: new ol.View2D({
center: ol.proj.transform([11.38, 48.54], this.options.markerEPSG, this.options.mapEPSG),
zoom: 5,
}),
});

在用户交互时,我向矢量图层添加和删除几个特征。这是添加新功能的函数:
  var feature = new ol.Feature({
topo: topo,
selected: false,
geometry: new ol.geom.Point(ol.proj.transform(location, this.options.markerEPSG, this.options.mapEPSG)),
});

this.topoLayer.getSource().addFeatures([feature]);

添加/删除新功能后,我想自动缩放和平移 map 以适合我的功能。在旧的 OpenLayers API 中有 getDataExtent矢量图层上的函数以检索显示的所有特征周围的“边界框”。但我想知道如何使用新的 API 来做到这一点。

最佳答案

在 3.7 版中,ol.View.fitExtent()ol.View.fitGeometry()已统一在一个函数中:fit .

所以现在的代码是:

 var extent = myLayer.getSource().getExtent();
map.getView().fit(extent, map.getSize());

关于javascript - OpenLayers 3矢量图层上所有特征的范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20816663/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com