直接跳到内容
本页目录

VTKVolume 3D体积数据组件

VTKVolume组件可渲染定义在规则网格上的3D体积数据。它可以从3D NumPy数组或vtkVolume构建。该组件提供了许多交互控制,可以通过Python回调或JavaScript回调设置。

底层实现为panel.pane.VTKVolume,参数基本一致,参考文档:https://panel.holoviz.org/reference/panes/VTKVolume.html

基本用法

最简单的创建PnVTKVolume组件的方法是使用3D NumPy数组。通过设置spacing参数可以产生一个长方体而不是立方体。

或者,该组件也可以从vtkImageData对象构建。这种类型的对象可以直接使用vtk或pyvista模块构建:

交互控制

PnVTKVolume组件公开了许多选项,可以从Python和JavaScript更改。尝试交互式地测试这些参数的效果:

API

属性

属性名说明类型默认值
object可以是3D numpy数组或vtkImageData类的实例ndarray|object 
origin场景中体积的原点tuple (0,0,0)
spacing定义3个维度中2个相邻体素之间的距离tuple (1,1,1)
render_background定义3D渲染的背景颜色str '#52576e'
camera反映VTK相机当前状态的字典dict 
controller_expanded展开/折叠视图中的体积控制器面板的布尔值bool 
orientation_widget在3D窗格中激活/停用方向小部件的布尔值bool 
colormap用于将像素值转换为颜色的colormap名称str 'erdc_rainbow_bright'
rescale如果设置为True,则colormap在非透明像素的最小值和最大值之间重新缩放bool True
display_volume如果设置为True,则使用光线投射显示体积的3D表示bool True
display_slices如果设置为true,则显示三个(X, Y, Z)方向的正交切片bool False
mapper存储有关通过3d视图中的javascript小部件设置的颜色映射器的信息的参数dict 
sampling调整用于渲染的样本之间距离的参数Number 0.4
edge_gradient基于体素之间的梯度调整体积不透明度的参数Number 0.4
interpolation用于采样体积的插值类型str 'fast_linear'
shadow如果设置为false,则体积的映射器将不执行阴影计算bool True
ambient控制环境光照的值Number 0.2
diffuse控制漫反射光照的值Number 0.7
specular控制镜面光照的值Number 0.3
specular_power镜面功率指的是光线像镜子一样反射的程度Number 8.0
slice_i控制垂直于X方向的切片位置的参数int 
slice_j控制垂直于Y方向的切片位置的参数int 
slice_k控制垂直于Z方向的切片位置的参数int 
nan_opacity控制切片中NaN值的不透明度的参数Number 1

方法

方法名说明类型
controls返回控制面板组件Callable 

Controls

src/examples/panel_vuepy/panes/VTKVolume

VTKVolume 3D体积数据组件已经加载完毕