所以我编写了代码,允许我向地图中添加形状,draw函数如下所示
addInteraction() {
this.coreMap.map.addInteraction(this.modifyLayer);
this.draw = new Draw({
source: this.vectorSource,
style: this.style,
type: 'Point'
});
this.coreMap.map.addInteraction(this.draw);
this.snap = new Snap({source: this.vectorSource});
this.coreMap.map.addInteraction(this.snap);
}
这很好,让我画上地图等,但如果我尝试改变矢量图层上的样式,让我们说,从一个绿色点到一个红色点,它会改变每个点,而不是新的,我已经尝试了一些事情;
-
尝试使用setStyle将新的Styles对象推入vectorlayer.Styles([StyleOneOpts,StyleTwoopts])
-
将Draw属性的Style属性设置为不同的值,这会将光标更改为所述颜色,但绘制点仍将是Vectorlayers样式颜色。
-
尝试创建一个新的绘图对象,并将其作为一个全新的交互添加到地图中
现在我假设每次我想用不同的颜色创造一个新的形状时,我都必须创造一个新的图层,如果周围没有办法,这很好,但是我更希望它保持在一个图层内。