经纬志
首页 / OpenLayers / 使用示例

WebGL 矢量图层

六个区域用 WebGL 矢量图层绘制,悬停时通过变量切换描边颜色与宽度。

OpenLayers 10.3.1 · 更新 2026-10-28
源码与运行效果
运行效果

说明

ol.layer.WebGLVector 的样式是字面量对象,stroke-color 和 stroke-width 可以用 case 表达式按 ['var', 'highlightedId'] 与要素 ['id'] 的比较结果切换。指针移动时只更新 highlightedId 变量,要素几何不重建。要素颜色存在 COLOR 属性中,以 RGB 数组参与表达式。

操作结果
悬停到区域上该区域描边变白加粗,顶部显示名称
移到空白处高亮清除,所有区域恢复默认描边
缩放地图WebGL 批量绘制要素,交互保持流畅

WebGL 矢量图层的样式表达式在图层级别编译,频繁变化的属性应写成样式变量,不要每帧重建样式对象。