OpenLayers 绘制线宽以米为单位的线串
OpenLayers draw line string with line width in meters
想要绘制线宽以米为单位的线串
尝试过样式,但它们是固定宽度(以像素为单位)并且在缩放时不改变线宽
提前致谢
尝试使用 Polygon,或者在 drawend 之后将 Line 更改为 Polygon。
如果有人感兴趣:
function() {
return [
new ol.style.Style({
stroke: new ol.style.Stroke({
color: 'rgba(0,0,0,1)',
width: 50 / ol.map.getView().getResolution()
})
})
]
}
您可以提供一个 returns 和 ol.style.Style
的函数,而不是直接使用 ol.style.Style
(例如 setStyle
)。
此函数在每个单独的渲染过程中调用,您可以动态更改 ol.style.Stroke
的宽度。
在上面的例子中画了一条线,如果您使用 Web Mercator 投影 (EPSG:3857),其中宽度 should 代表现实世界中的 50 米。
想要绘制线宽以米为单位的线串
尝试过样式,但它们是固定宽度(以像素为单位)并且在缩放时不改变线宽
提前致谢
尝试使用 Polygon,或者在 drawend 之后将 Line 更改为 Polygon。
如果有人感兴趣:
function() {
return [
new ol.style.Style({
stroke: new ol.style.Stroke({
color: 'rgba(0,0,0,1)',
width: 50 / ol.map.getView().getResolution()
})
})
]
}
您可以提供一个 returns 和 ol.style.Style
的函数,而不是直接使用 ol.style.Style
(例如 setStyle
)。
此函数在每个单独的渲染过程中调用,您可以动态更改 ol.style.Stroke
的宽度。
在上面的例子中画了一条线,如果您使用 Web Mercator 投影 (EPSG:3857),其中宽度 should 代表现实世界中的 50 米。