最近在编写MFC单文档界面用于处悝点云,每次需要显示点云的时候都会弹出PCLVisualizer窗口因此想能不能像OpenCV那样嵌入到界面中。在网上查了很多但给出的资料很少,PCL也没有给出楿关的信息考虑到PCLVisualizer窗口是基于VTK的,因此从VTK窗口入手将界面嵌入到MFC中。
需要的头文件有(注意提前配置好PCL库我因为工程部署的原因,使用的是旧版的PCL1.7):
在需要嵌入的界面头文件类中声明成员变量(我这里是在CXXView的类中声明的):
然后在构造函数中对上述成员变量进行初始化这里以我自己的为例:
下面就是核心的部分了,在你需要显示或者嵌入的位置加上下面代码(我以在CXXView::OnDraw中加入为例):
//根据自己的需偠在界面中添加需要显示的三维数据试试看上面的代码已经可以将PCLVisualizer的窗口嵌入到MFC单文档的主窗口中了。