在OpenLayers中,可以根据缩放级别打开或关闭某些要素。尽管查看了文档,但我在OpenLayers 3中未找到相同的功能。请问有人知道如何实现这一点吗?我想在地图上放置此功能,并且只有当用户缩放到特定缩放级别后才希望显示
ol.style.Text
。var geoJsonObj = {
'type': 'Feature',
'geometry': JSON.parse(response.FieldList[key].Shape)
}
var vectorSource = new ol.source.Vector({
features: (new ol.format.GeoJSON()).readFeatures(geoJsonObj)
});
Fields[Field.FieldID] = new ol.layer.Vector({
projection: 'EPSG:4269',
source: vectorSource,
style: new ol.style.Style({
stroke: new ol.style.Stroke({
color: 'yellow',
width: 1
}),
fill: new ol.style.Fill({
color: rcisWebMapUtilities.convertHex(response.FieldList[key].Shade, '0.5')
}),
text: new ol.style.Text({
textAlign: 'Center',
text: response.FieldList[key].Acres,
scale: 1
})
})
});
minResolution
和maxResolution
是否符合您的需求?api文档请参考此处 --> http://openlayers.org/en/latest/apidoc/ol.layer.Vector.html - pavlosol.style.StyleFunction()
而不是静态样式。它接受两个参数:ol.Feature
和resolution
。因此,使用分辨率返回您的静态样式,有或没有文本。如果需要进一步帮助,我可以尝试为您创建一个 fiddle。 - pavlos