Qt中怎么加载并显示3d模型啊?

Qt中怎么加载并显示3d模型啊?,第1张

建立一个继承自QOpenGLWidget的自定义类,在自定义类中写opengl相关代码即可显示3D图像。
如果要加载3d模型(3dmax,maya),需要自己制作3D模型文件编码解码器,将模型转换成纹理,坐标等信息。通过QT的信号与槽机制,将上述信息传递给上面那个自定义类进行显示。3d模型的格式很多是保密的,除非找到相关模型的解码库,否则很难弄出来。如果只是显示3d图像就简单的多,只要查找QT和OpenGL的相关资料就可以了。

Qt贴吧里的资料汇总

Qt 插入这个 *** 作有许多的方式,常用的是采用QPainter绘图板插入,因为这种方法是通过像素坐标来固定插入的位置,还可以插入动态图和视频,功能很强大。 Qt通过painter加载 因为我非科班出身,只是学了QT的大概 *** 作,所以对于的移动缩放这个简单的函数也是找了许多博文看了才懂。其实也非常简单。
*** 作——移动
*** 作——缩放旋转
*** 作——通过定时器控制移动
在插入后,的移动也做了后发现了一个问题:就是多步 *** 作移动后,的加载会出错,即不显示和错误的显示大小。我就将坐标的变量改为volatile 型结果还是不行。就想到了刷新界面。 刷新函数update() 和 刷新图元repaint() ,这两个函数都是用来刷新界面,用update时 *** 作过快时偶尔没反应,用repaint时不会清除历史界面而是加叠在最上面。我就绝望了,就换了其他加载的方式,QPalette,QImage,QPicture,setPixmap ,结果后面的 *** 作函数也要重写,而网上这些函数的移动缩放 *** 作还没有,我就心如咸鱼了。后来睡觉前想到了将两个函数同时使用试试,结果就正常显示了,兴奋的我就去玩了两盘王者荣耀,两点多才睡。
这个网站的页面插件做的很不错,不知道是怎么做的。很有趣。 update()函数介绍

这个就是Qt的表格,表格 *** 作没什么难点,只是在下最近要用就去又学了一遍。这是看到的比较好的两篇干货。
Qt tableview的用法小结
Qt tableview的用法小结(二)

#include <QtGui/QtGui>

#include "CImageh"

CImage::CImage(QWidget parent):QDialog(parent)
{
ImageLabel=new QLabel(tr("加载中"));

QVBoxLayout vboxLayout = new QVBoxLayout;
vboxLayout->addWidget(ImageLabel);
setLayout(vboxLayout);

setWindowTitle(tr("加载网络测试"));
resize(300, 200);

currentPicture = new QPixmap;

//获取网络
QNetworkAccessManager manager;
manager = new QNetworkAccessManager(this);

connect(manager, SIGNAL(finished(QNetworkReply)),
this, SLOT(replyFinished(QNetworkReply)));
manager->get(QNetworkRequest(QUrl(">

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13355299.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-20
下一篇 2023-07-20

发表评论

登录后才能评论

评论列表(0条)

保存