Merge pull request #13747 from theduckylittle/feature/add-setters-to-shape-styles

Add setFill and setStroke to Shapes
This commit is contained in:
Tim Schaub
2022-07-02 16:16:03 -06:00
committed by GitHub
5 changed files with 82 additions and 0 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,48 @@
import Feature from '../../../../src/ol/Feature.js';
import Fill from '../../../../src/ol/style/Fill.js';
import Map from '../../../../src/ol/Map.js';
import Point from '../../../../src/ol/geom/Point.js';
import RegularShape from '../../../../src/ol/style/RegularShape.js';
import Stroke from '../../../../src/ol/style/Stroke.js';
import Style from '../../../../src/ol/style/Style.js';
import VectorLayer from '../../../../src/ol/layer/Vector.js';
import VectorSource from '../../../../src/ol/source/Vector.js';
import View from '../../../../src/ol/View.js';
const vectorSource = new VectorSource({
features: [
new Feature({
geometry: new Point([0, 0]),
}),
],
});
const regularShapeStyle = new RegularShape({
fill: new Fill({color: 'red'}),
stroke: new Stroke({color: 'blue'}),
points: 4,
radius: 10,
});
const vectorLayer = new VectorLayer({
source: vectorSource,
style: new Style({
image: regularShapeStyle,
}),
});
const map = new Map({
target: 'map',
layers: [vectorLayer],
view: new View({
center: [0, 0],
resolution: 1,
}),
});
map.renderSync();
regularShapeStyle.setFill(new Fill({color: 'green'}));
regularShapeStyle.setStroke(new Stroke({color: 'yellow'}));
vectorLayer.changed();
render();