我想重新创建OSM在编辑多边形时使用的相同样式。我称之为“内部中风”或“内部缓冲”。
OSM示例:
我知道我可以使用ol.style.Style
数组,其中一个发送回geometry
作为内部缓冲区。但是,创建新几何图形似乎非常耗费资源,只是为了用缓冲区来表示原始几何体。这是推荐的方式吗?我可以以某种先进的方式使用ol.style.Stroke
吗?
另一个特点是“内部笔触”的屏幕像素宽度是一个恒定的量,与缩放级别无关。例如,这是多边形缩小并在:
答案 0 :(得分:0)
这与我在项目中使用的类似。我从http://openlayers.org/en/latest/apidoc/ol.style.html获得了这段代码如果你想要一个更粗的边框,你可以增加笔画的宽度。
var fill = new ol.style.Fill({
color: 'rgba(255,255,255,0.4)'
});
var stroke = new ol.style.Stroke({
color: '#3399CC',
width: 1.25
});
var style = new ol.style.Style({
fill: fill,
stroke: stroke
});