javascript - 透明图像叠加Mapbox GL JS

标签 javascript mapbox-gl

我想在 Mapbox GL JS 中围绕一个对象画一个圆圈,但它似乎不支持绘制类似的东西。所以我尝试在 Photoshop 中创建一个带有红色圆圈和透明背景的 PNG。但是当我在 map 上加载图像时,图像失去了透明度。

enter image description here

我用来生成它的代码是:

var sourceObj = new mapboxgl.ImageSource({
        url: '/img/circle-red.png',
        coordinates: [
            [-80.425, 46.437],
            [-71.516, 46.437],
            [-71.516, 37.936],
            [-80.425, 37.936]
        ]
});

map.addSource('someimage', sourceObj);

map.addLayer({
    "id": "someimage",
    "source": "someimage",
    "type": "raster"
});

有人知道如何实现透明背景吗?或者有人知道在 map 上画圆圈的替代方法吗?

提前致谢。

最佳答案

我知道已经晚了一年,但如果有人再次遇到这个问题,图层上有一个光栅不透明度属性。请参阅https://www.mapbox.com/mapbox-gl-js/example/adjust-layer-opacity/ .

map.addLayer({
  "id": "current_image",
  "source": "current_image",
  "type": "raster",
  "paint" : {
    "raster-opacity" : 0.5
  }
});

如果您正在处理一张知道不透明度的图像,那就可以了!

关于javascript - 透明图像叠加Mapbox GL JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37767908/

相关文章:

javascript - Javascript:随机数生成器始终显示相同的数字

javascript - 指令并不总是在页面加载时触发

javascript - react : FitBounds issue when passing array of longlat - react-mapbox-gl

javascript - 使用 Mapbox gl js 制作多个图标 Sprite

mapbox-gl - 在 mapbox-gl-js 中切换图 block url 的推荐方法

ios - Mapbox iOS 集群有效,但圆形样式层和数字层未出现/反射(reflect)集群的标记密度

javascript - 在 Bootstrap 中隐藏和显示按钮

javascript - D3 选择有效,而 svg 选择无效

mapbox-gl - 是否可以通过mapbox gl访问mbtiles中的元数据/图层?

javascript - 正则表达式中美元符号的含义