使用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
答案 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);});