如何在openlayers 4中设置多边形的样式

时间:2017-12-11 11:32:23

标签: openlayers

使用openlayers 4我将一个或多个多边形从一个层复制到另一个层,因为它们没有样式,所以我想给它们分配一个。 我可以在图层上添加样式,但多边形没有导出样式。这就是为什么我试图为多边形设置样式而没有成功的原因。 以下代码返回" TypeError:...不是函数"

var Polygon= new ol.style.Style({
          fill: new ol.style.Fill({
            color: 'rgba(255, 255, 255, 0.5)',//'#ffffff'
          }),
          stroke: new ol.style.Stroke({
            color: '#ffcc33',
            width: 4
          })
        });
        getDrawingLayer().getSource().addFeatures(select.getFeatures().getArray());//pass the polygons
         //getDrawingLayer().setStyle(Polygon)};//succes
getDrawingLayer().getSource().getFeatures().setStyle(Polygon);//try to set the style of polygons

2 个答案:

答案 0 :(得分:0)

我找到了一个解决方案: 而不是

color: 'rgba(255, 255, 255, 0.5)',

我把

color: [255, 255, 255, 0.5],

答案 1 :(得分:-1)

好的,我理解,因为图层是一个数组,我必须从中分配每个特征 与

getDrawingLayer (). getSource (). forEachFeature (function (feature) {
feature.setStyle (Polygon);});