簡體   English   中英

是否有可能在 WebGlPointsLayer 上實現多過濾

[英]Is there any possibilities to realize multi-filter on WebGlPointsLayer

我正在使用 React、OpenLayers 和https://tileserver.readthedocs.io/en/latest/index.html為我的 WebGlPointLayer 獲取 src。 我有很多數據要在最高變焦上顯示。 現在我要創建一些過濾器,所以按照 OpenLayers 示例( https://openlayers.org/en/latest/examples/filter-points-webgl.html )我已經為我的項目做了同樣的事情。 問題是多個過濾器的實現。 過濾器由 style.variables 和 style.filter 完成。

{
    variables: defaultVariables,
    filter: ['between', ['get', 'i'], ['var', 'volumeMnemonicsFrom'], ['var', 'volumeMnemonicsTo']],
    symbol: {
      symbolType: 'circle',
      size: [10, 10],
      color,
      rotateWithView: false,
      offset: [0, 0],
    },
  }

是否有可能通過 WebGLPointsLayer 樣式屬性實現多個過濾器?

您需要做的只是使用“all”表達式並將所有過濾器定義作為它的參數。 像這樣的東西:

  filter: ['all', 
    ['between', ['get', 'i'], ['var', 'volumeMnemonicsFrom'], ['var', 'volumeMnemonicsTo']],
    ['between', ['get', 'anotherFilterField'], ['var', 'minAnotherFilterField'], ['var', 'maxAnotherFilterField']],
  ],

您可以在此處查看表達式的源代碼。 遺憾的是,在 openlayers 頁面中WebGlPointsLayer 的原始示例中缺少all值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM