Итак, я пытаюсь установить цвет объекта следующим образом:
addInteraction() {
this.style = new Style({
fill: new Fill({
color: this.fillColour,
}),
stroke: new Stroke({
color: this.lineColour,
width: 2
}),
image: new CircleStyle({
radius: 7,
fill: new Fill({
color: this.fillColour
}),
stroke: new Stroke({
color: this.lineColour
})
})
})
this.draw = new Draw({
source: this.vectorSource,
style: [this.style],
type: this.selectedShape,
})
this.coreMap.map.addInteraction(this.draw)
this.snap = new Snap({ source: this.vectorSource })
this.coreMap.map.addInteraction(this.snap);
this.coreMap.map.addInteraction(this.modifyLayer);
}
Теперь, когда я рисую объект, скажем, что это круг с красной линией и синей заливкой, он покажет круг с красной линией и синей заливкой, пока я рисую его, но как только он будет завершен, он по умолчанию будет openlayers по умолчанию окрашивает синий цвет в голубой.
Если я применю стиль к vectorLayer, он сохранится, но я хочу, чтобы функция удерживала цвет, а не слой, так как мне нужно несколько объектов с несколькими цветами на одном слое, я пробовал несколько разных вещей, таких как настройка цвет вне объекта newDraw с помощью простого метода set или установка стиля с помощью функции стиля внутри рисованного объекта без удачи.