ITK+VTK+QT 读取DICOM序列图像遇到的问题(1)

时间:2022-12-18 10:07:55

1、qvtkWidget->GetRenderWindow()->AddRenderer(m_pRenderder);出现内存泄露错误

注意初始化类中

ITKreadDICOMtoVTK::ITKreadDICOMtoVTK()
{
setupUi(this);

......

]

之前因为是自动生成的qt5工程,初始化类中带参数并且是ui.setuoUi(this),去掉ui.就可以了


2、编译错误

也是类似于itkgdcmCommon-4.6.lib(gdcmSystem.obj) : error LNK2019: 无法解析的外部符号 _WSAStartup@8,该符号在函数 "public: static bool __cdecl gdcm::System::GetHostName(char * const)" (?GetHostName@System@gdcm@@SA_NQAD@Z) 中被引用

这种错误,网上搜索了一下,发现在上面加上

#pragma comment(lib,"rpcrt4.lib")
#pragma comment(lib,"WS2_32.lib")

就可以了,不知道会什么会调用这2个类库我主要用的都是itk、qt、vtk的库......


3、之前出现的一种错误,无法new出vtkSmartPointer< vtkImageViewer2 >,

解决的方法是把#define vtkRenderingCore_AUTOINIT 4(vtkInteractionStyle,vtkRenderingFreeType,vtkRenderingFreeTypeOpenGL,vtkRenderingOpenGL)
#define vtkRenderingVolume_AUTOINIT 1(vtkRenderingVolumeOpenGL)放进头文件,可是这次我把它放进cpp就失效了,所以注意一定要放到.h的文件中。