然后这个掘金编辑器对于QT代码的处理方式另外失望。我也不知道是什么原因,我的电脑复制QT就一直有问题。所以这里我会使用截图的方式展现代码
本篇文章代码运行在QT环境上,使用VTK图像处理库。
实现效果
步骤拆分
- 加载点云模型
- 给点云模型添加包围盒
- 给包围盒对点云模型的操作添加交互事件
- 将点云盒包围盒加入到场景当中去
- 在QVTKWidget上运行程序
加载点云模型
- 定义变量
- 设置将VTK场景渲染到QVTK上面去
设置裁剪面相对于模型的位置
配置交互器和盒模型
配置交互类
VTK重点API讲解
- vtkVertexGlyphFilter:vtkVertexGlyphFilter类的功能是创建一个多边形数据
vtkPolyData,其中每个点都被创建了一个顶点Vertex;【丢弃单元 保留顶点,用来处理点云数据】 - vtkPolyData:vtkpolydata用来表示顶点、线、多边形、三角形带在内的几何结构,即三维实体。
- vtkClipPolyData:vtkClipPolyData使用用户指定的隐式函数(user-specified implicit function)或输入标量数据(input scalar data)剪裁多边形数据;vtkClipPolyData是一种Filter,接受vtkImplicitFunction派生出的任何子类或者标量数据集,vtkClipPolyData实现的剪切功能实际上“剪切”数据集的单元格,返回指定隐式函数(或大于标量值)内的所有内容,包括单元格的“片段”(将此与vtkExtractGeometry进行比较,该几何图形将拉出整个未切割单元格。)此筛选器的输出为多边形数据(vtkPolyData)。