我目前正在使用Mapbox GL JS中的图像叠加层(.gif)提供天气雷达数据。我需要设置一个循环来显示运动中的图像-但是图像叠加层具有“淡入”效果,我希望这种效果消失了。如何删除此图像,以便图像尽可能快地打开和关闭,而不会淡入或淡出?我在API文档中找不到此内容,但是有可能我以某种方式错过了它。
编辑:要清楚,我只是问如何消除淡入淡出效果-而不是如何循环播放它或其他任何东西-我以后可以做。
我的添加叠加层和源(产生默认淡入淡出效果)的代码当前为:
topleftmapbox.addSource("source_KEWX_L2_CC", {
"type": "image",
"url": "images/KEWX_L2_CC.gif",
"coordinates": [
[-102, 33],
[-94, 33],
[-94, 26],
[-102, 26]
]
})
topleftmapbox.addLayer({
"id": "overlay_KEWX_L2_CC",
"source": "source_KEWX_L2_CC",
"type": "raster",
"raster-opacity": 0.9,
"layout": {"visibility": "visible"},
}, firstSymbolId)
}
答案 0 :(得分:2)
您需要更改raster-fade-duration
属性:
topleftmapbox.addLayer({
"id": "overlay_KEWX_L2_CC",
"source": "source_KEWX_L2_CC",
"type": "raster",
"paint": {
"raster-opacity": 0.9,
"raster-fade-duration": 0
},
"layout": {"visibility": "visible"},
}, firstSymbolId)
P.S。是的,我建议使用canvassource
进行动画制作。