#javascript #openlayers #geoserver #sld
Вопрос:
Я загружаю слой с геосервера на OpenLayers, используя этот код :
overlays = new ol.layer.Group({
'title': 'Couches',
layers: [
new ol.layer.Image({
title: 'refer_22',
source: new ol.source.ImageWMS({
url: 'http://localhost:8080/geoserver/wms',
params: {'LAYERS': 'topp:refer_22'},
ratio: 1,
serverType: 'geoserver'})
})
]
});
map.addLayer(overlays);
В Geoserver я создал стиль sld «style.sld» и назначил его слою
Теперь предположим, что у меня есть 5 стилей : «style_1.sld», …, «style_5.sld»
Есть ли способ добавить строку, в которой я могу указать, в каком стиле я хочу, чтобы отображался мой слой.
Комментарии:
1. Если у вас есть именованные стили, доступные в возможностях, вы можете динамически изменять их
layer.getSource().updateParams({'STYLES': 'style_1'});
Вы также можете передать SLD и SLD_BODY в качестве параметров. Длинному SLD_BODY может потребоваться пользовательская функция загрузки для загрузки изображения через сообщение XHR.2. Да ,это именно то, что мне было нужно, спасибо