无法在 WebGL 图层中设置多边形样式

问题描述 投票:0回答:1

我正在遵循 OpenLayers 示例“WebGL Vector Layer”,并尝试简单地从我的 GeoJSON 文件中指定多边形的颜色填充,但无法做到。

我相信问题可能存在于示例中引用“WebGLStyle”的注释@type行中,如下所示。我一直无法找到、导入或添加 WebGLStyle。我的多边形仅以灰色显示。

有人可以提供一个代码片段,让我可以对我的多边形应用简单的红色填充吗?

上述 OL 示例中的代码:

/** @type {import('ol/style/webgl.js').WebGLStyle} */
const style = {
  'stroke-color': ['*', ['get', 'COLOR'], [220, 220, 220]],
  'stroke-width': 3,
  'stroke-offset': -1,
  'fill-color': ['*', ['get', 'COLOR'], [255, 255, 255, 0.6]],
};

我的代码尝试尝试将多边形设置为红色:

const sStyle = {
  'fill-color': [255, 0, 0],
};

class WebGLLayer extends Layer {
  createRenderer() {
    return new WebGLVectorLayerRenderer(this, {
      className: this.getClassName(),
      sStyle,
    });
  }
}

const polygonLayer = new WebGLLayer({
  > Then add vector source, etc.
  • 12/2 注意: 通过“npm install ol”重新安装 OL 解决了上述多边形问题,它们现在显示为红色。但是之前工作正常的 WebGL 点图层不再工作,错误出现在下面链接的屏幕截图中:

Errors

openlayers
1个回答
0
投票

在 Mike 评论的帮助下,确定此代码应该可以工作。通过“npm install ol”进行了全新安装,解决了该问题。

© www.soinside.com 2019 - 2024. All rights reserved.