VTK:设置透明渲染器背景

use*_*728 5 transparency renderer opacity vtk

我可以通过调用来定义渲染器的背景颜色

renderer = vtk.vtkRenderer()
renderer.SetBackground(0,255,0)
Run Code Online (Sandbox Code Playgroud)

[![在此处输入图像描述][1]][1]

我的问题:

可以设置背景的不透明度吗?

您可以在我的示例图像中看到我的问题(具有多个视口)。我可以通过简单地使用透明背景来摆脱这种“切割”......

提前致谢!

use*_*728 5

我终于找到了解决方案:

您可以为每个渲染器设置一个图层。默认为第 0 层(不透明)。大于第 0 层的所有内容都将是透明的。但请记住,在第 0 层上至少设置一个具有背景颜色的空渲染器(无体积或对象),以避免难看的反射。

renderer.SetBackground(255,255,255)
renderer.SetLayer(0)

# transparency layer
renderer.SetLayer(1)
renderer.addVolume(....)
Run Code Online (Sandbox Code Playgroud)

结果:

在此输入图像描述