我们如何禁用符号淡出,淡入效果?

How can we disable symbol fade out, fade in effect?

  1. 示例网站
  2. https://www.mapbox.com/mapbox-gl-js/example/toggle-layers/

预期行为

我们如何在 mapboxgl 中禁用淡入淡出效果?

我认为您描述的 "fade in, fade out" 效果是由定义如下的层引起的:

"icon-opacity": {
    "stops": [[12, 0], [13, 1]]
}

也就是。在缩放 12 时,它的不透明度为 0,在缩放 13 时,它的不透明度为 1,在缩放 12.5 时,它为 0.5 - 看起来是半透明的。

有几个修复:

  • "minzoom": 13 使其根本不会出现在缩放 13 以下(因此不会褪色)
  • 像这样重新定义不透明度属性,所以没有半透明区域:

"icon-opacity": { "stops": [[12.9, 0], [13, 1]] }

  • 添加"type": "interval"所以没有插值

我知道这对您来说是标准样式 (Mapbox Streets) 的问题,因此您必须创建该样式的自定义版本。

除了史蒂夫关于因不透明度​​缩放功能而褪色的回答。符号出现时发生的淡入淡出应该能够通过全局或每层的过渡属性进行控制。参见 https://www.mapbox.com/mapbox-gl-js/style-spec/#root-transition