Com o código a seguir, posso definir 100% de transparência para o valor raster 0:
map=None
for lyr in QgsMapLayerRegistry.instance().mapLayers().values():
if lyr.name() == "some_layer":
map= lyr
tr=None
tr=QgsRasterTransparency()
tr.initializeTransparentPixelList(0)
map.renderer().setRasterTransparency(tr)
map.triggerRepaint()
Como posso definir dois valores (0 e 8) como 100% transparentes?
Quando repito os comandos do último bloco com o valor raster 8, o primeiro valor (0) é removido da transparência da camada.
qgis
python
pyqgis
transparency
Stefan
fonte
fonte