该文记录了一些本人在刚使用VTK的时候,遇到的不容易搜索到答案的问题。
1.可视化异常爆错问题
如果加入渲染render相关代码,爆出异常错误,并没有可视化显示任何内容。
解决方案,引入头文件:
#include <vtkAutoInit.h>
// Initialize VTK modules
VTK_MODULE_INIT(vtkRenderingFreeType);
VTK_MODULE_INIT(vtkRenderingOpenGL2);
VTK_MODULE_INIT(vtkInteractionStyle);
VTK_MODULE_INIT(vtkRenderingVolumeOpenGL2);
2. 不允许指向不完整类型 的指针或引用
不允许指向不完整类型"***" 的指针或引用
一般是没有包含该类的头文件,例如获取图像的维度的时候,可以使用下面的代码
int* dimensions = imageReader->GetOutput()->GetDimensions();
imageReader->GetOutput() 的返回类是vtkImageData,虽然没有在代码中显示表明vtkImageData类,仍然需要引入该类 #include <vtkImageData.h> 。
解决方法:引入报错提示中缺少类的头文件。