openlayers 设置feauter 背景圆角
时间: 2023-10-01 21:06:00 浏览: 272
你可以通过设置 `border-radius` 属性来给 OpenLayers 中的 feature 添加背景圆角。具体步骤如下:
1. 在创建 feature 的时候,给 feature 添加一个 `style` 属性,并设置其 `background-color` 和 `border-radius` 属性。
```javascript
var feature = new ol.Feature({
geometry: new ol.geom.Point([0, 0]),
name: 'My Point'
});
feature.setStyle(new ol.style.Style({
image: new ol.style.Circle({
radius: 10,
fill: new ol.style.Fill({
color: 'red'
})
}),
fill: new ol.style.Fill({
color: 'rgba(255, 255, 255, 0.6)'
}),
stroke: new ol.style.Stroke({
color: '#319FD3',
width: 1
}),
text: new ol.style.Text({
font: '12px Calibri,sans-serif',
fill: new ol.style.Fill({
color: '#000'
}),
text: feature.get('name'),
offsetY: 16
}),
// 背景圆角
borderRadius: '10px'
}));
```
2. 如果你想对所有 feature 设置相同的样式,可以在创建 `ol.style.Style` 对象时,设置其 `background-color` 和 `border-radius` 属性。
```javascript
var style = new ol.style.Style({
fill: new ol.style.Fill({
color: 'rgba(255, 255, 255, 0.6)'
}),
stroke: new ol.style.Stroke({
color: '#319FD3',
width: 1
}),
// 背景圆角
borderRadius: '10px'
});
var vectorLayer = new ol.layer.Vector({
source: vectorSource,
style: style
});
```
阅读全文