VTK:如何从结构化网格生成阈值渲染

2024-09-29 23:30:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我希望在通过某个阈值的结构化网格上渲染标量数据(例如,请参见下文)

an example of the kind of rendering I'd like, generated with paraview

我用vtk试过了。请参阅下面的代码片段了解我的代码

 grid.SetPoints(points)                                                         
 grid.SetDimensions(nx,ny,nz)                                                   
 grid.GetPointData().SetScalars(scalars)                                        
                                                                                
 threshold = vtk.vtkThresholdPoints()                                           
 threshold.SetInputData(grid)                                                   
 threshold.ThresholdByUpper(0.5)                                                
                                                                                
 mapper = vtk.vtkDataSetMapper()                                                
 mapper.SetInputConnection(threshold.GetOutputPort())                           
                                                                                
 actor = vtk.vtkActor()                                                         
 actor.SetMapper(mapper)                                                        
 renderer.AddActor(actor)                                                       
                                                                                
 interactor.Start()    

也就是说,我有一个点和标量集的结构化网格。然后我构建一个阈值映射器和参与者。只要选择了正确的子集,阈值看起来就正常工作。但它不是一个立方体阵列,而是一个点阵列(见下文)

my own render produces a series of dots as opposed to cubes

我的问题是:如何将这些点替换为立方体,如图1所示


Tags: 数据代码网格threshold请参阅阈值pointsgrid

热门问题