如何将QVTKWidget嵌入到QT窗体,实现点云的显示?
1.直接通过QT中QtDisigner创建窗体,然后把QVTKWidget控件放进去,这个比较直观,且易操作。但是你先要把QVTKWidgetPlugin.dll和QVTKWidgetPlugin.lib放到QTDesigner目录下。
2.纯代码创建。
这个相对来说可能复杂些,但是,后续的操作可能会灵活些(不like QTDesigner的盆友可以用这个)。
//main.cpp
#include <QApplication>
#include <mainwindow.h>
int main (int argc, char * argv[])
{
QApplication mainapp(argc, argv);
MainWindow mainwindow;
mainwindow.show();
return mainapp.exec();
}
//mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QtCore/qglobal.h>
#if QT_VERSION >= 0x050000
#include <QtWidgets/QMainWindow>
#else
#include <QtGui/QMainWindow>
#endif
#include <pcl/visualization/pcl_visualizer.h>
class QVTKWidget;
class MainWindow : public QMainWindow
{
public:
explicit MainWindow (QWidget* parent = 0);
private:
//创建对象
QVTKWidget* qvtkWidget;
boost::shared_ptr<pcl::visualization::PCLVisualizer> viewer;
};
#endif // MAINWINDOW_H
//mainwindow.cpp
#include "mainwindow.h"
#include "QVTKWidget.h"
#include "vtkRenderWindow.h"
MainWindow::MainWindow( QWidget * parent) : QMainWindow( parent )
{
setWindowTitle( tr("PointCloud"));
//为创建的对象开辟空间
qvtkWidget = new QVTKWidget(this);
viewer.reset (new pcl::visualization::PCLVisualizer ("viewer", false));
//这两句代码很重要,至于为何重要,我不是很看的懂,可以一块沟通,
qvtkWidget->SetRenderWindow (viewer->getRenderWindow ());
viewer->setupInteractor (qvtkWidget->GetInteractor (), qvtkWidget->GetRenderWindow ());
setCentralWidget( qvtkWidget );
qvtkWidget->update ();
}
温馨提示:必要的头文件一定添加的。
#include <pcl/visualization/pcl_visualizer.h>
#include "QVTKWidget.h"
#include "vtkRenderWindow.h"
最开始时,由于没有包含vtkRenderWindow.h头文件,导致出现奇怪的数据。
点云显示结果为
qq:2132591244,一起沟通,一起学习,一起加油。
如何将QVTKWidget嵌入到QT窗体,实现点云的显示?相关推荐
- 将QVTKWidget嵌入到QT窗体,实现点云可视化的基本操作
将QVTKWidget嵌入到QT窗体,实现点云可视化的基本操作 网络上的朋友都在讲,做点云数据处理的童鞋都希望做一个属于自己的点云可视化的界面,不论是情怀还是业务需要,我都做了一个1.0.1版本的可视 ...
- 将Unreal4打包后的工程嵌入到Qt或者桌面中
2019独角兽企业重金招聘Python工程师标准>>> 嵌入到Qt窗口有2种思路: 1.直接使用WinAPI将窗口直接嵌入,缺点:你需要自己编写移动.Layout之类的调整代码. 2 ...
- qt将html加载到资源文件,web页面嵌入到Qt
标签(空格分隔): plug 开发方式:在web环境下开发完成后,将单独页面嵌入到qt中,html.js等文件都作为资源加入到qt工程中 1):1.html页面中引入webchannel库: 其中,w ...
- Python人脸表情识别QT窗体
.Python人脸表情识别QT窗体 如需安装运行环境或远程调试,可加扣905733049, 或扣2945218359由专业技术人员远程协助! 运行结下: 主要代码: # coding:utf-8 im ...
- osg3.4.0完美嵌入到Qt(实现各种事件响应)(一)
最近做东西需要osg三维渲染与Qt界面结合,网上查了不少都是不完整的.自己写不出来就想到了一个比较无耻的办法,把osgQt中的GraphicsWindowQt文件下的内容粘贴出来,将class GL ...
- 【二次开发】将CATIA嵌入到Winform窗体中
由于项目需要,我们需要将CATIA嵌入到我们的软件之中,要求在软件启动后,同时调用并启动CATIA软件,并能够屏蔽掉软件自身的菜单和按钮.通过在网上查阅资料,实现了这一功能. 调用并启动CATIA p ...
- C#之如何把子窗体嵌入到主窗体中显示
C#之如何把子窗体嵌入到主窗体中显示 今天总结一下把子窗体嵌入到主窗体中显示的方法.当你点击一个Button显示子窗体时,往往子窗体都是单独弹出,而如果想要子窗体直接在主窗体上显示,这就需要将子窗体嵌 ...
- Qt界面优化:Qt窗体控件设置
Qt界面优化:Qt窗体控件设置 文章目录 Qt界面优化:Qt窗体控件设置 一.效果图 1.鼠标移动点击效果 2. Qt托盘效果 二.使用步骤 1. 背景图片的添加 2. 控件样式的更改 3. Qt窗体 ...
- QT界面中实现视频帧显示的多种方法及应用
QT界面中实现视频帧显示的多种方法及应用 (一) 引言 1.1 视频帧在QT界面中的应用场景 1.2 不同方法的性能和适用性分析 1.2.1 使用QLabel和QPixmap 1.2.2 使用QPai ...
最新文章
- 阿里云HBase全新发布X-Pack NoSQL数据库再上新台阶
- Yii2多模型与事务的用法
- IO多路复用:select/poll/epoll
- 采用EntityFramework.Extended 对EF进行扩展(Entity Framework 延伸系列2)
- AWS Loft的数据库周
- mac看图软件哪个好用_细数Mac上那些好用且免费的软件(三)
- mysql使用语句_Mysql基本使用语句
- 计算机二级考试c语言冲刺,计算机二级C语言考试冲刺练习题
- Gmail 收信的一些规则
- android判断图片是否模糊,Android 图片模糊 性能总结
- Could not load file or assembly 'XXXXXXXX' or one of its dependencies. 试图加载格式不正确的程
- unity3d-学习笔记8-卡牌游戏制作(实现动态读取卡片信息并且在游戏界面展现)
- 如何使用启动盘启动计算机,电脑重装系统怎么设置用U盘启动盘引导?
- Linux使用shell脚本批量拷贝文件
- java如何实现系统定位_如何快速定位到系统中某一功能的具体实现
- 各纬度气候分布图_气候气压带图_世界气候气压带风带分布图要图(需要表识纬度)-4d影院专题信息栏目...
- 2015年8月之 英雄不老
- 感悟:君子不立于危墙之下
- python无法打开文件_Python无法打开文件“没有这样的文件或目录”
- 能长期做到以下32点的程序员,达到月薪30K往上,不太难: