查看: 1024|回复: 5

osg与Qt融合问题

[复制链接]

该用户从未签到

发表于 2015-7-13 15:46:21 | 显示全部楼层 |阅读模式
我的osg已经封装成库,然后想嵌入到qt中显示;参考osgViewerQt的例子addViewWidget改造成下面:其中m_pOsgViewr是获取osg库
中的viewer
QWidget* myWidget::addViewWidget(osgQt::GraphicsWindowQt* gw)
{
   addView(m_pOsgViewr);
   m_pOsgViewr->realize();
   osg::Camera* camera = m_pOsgViewr->getCamera();
  
   camera->setGraphicsContext(gw);
   m_pOsgViewr->setCamera(camera);
   
   return gw->getGLWidget();
}
程序刚把osg场景显示出来,在执行到下面paintEvent函数时,进入frame后程序卡死,这是为啥呀?请哪位老师赐教一下

void myWidget::paintEvent(QPaintEvent *event)
{
        qDebug() << "begin";
        m_pOsgViewr->frame();
        qDebug() << "end";
}

该用户从未签到

发表于 2015-7-15 00:06:22 | 显示全部楼层
你这么简单的代码我只能猜是不是这句m_pOsgViewr->realize();多余了

该用户从未签到

 楼主| 发表于 2015-7-15 09:14:58 | 显示全部楼层
buaahc 发表于 2015-7-15 00:06
你这么简单的代码我只能猜是不是这句m_pOsgViewr->realize();多余了

如果没有m_pOsgViewr->realize()或者把realize放到osg引擎库中,这样做qt界面起来啥东西都不会显示出来。

该用户从未签到

发表于 2015-7-15 16:13:12 | 显示全部楼层
那请给出更多代码,难道是要让猜么

该用户从未签到

 楼主| 发表于 2015-7-16 13:56:34 | 显示全部楼层
问题已经解决,谢谢关注

该用户从未签到

 楼主| 发表于 2015-7-16 13:57:09 | 显示全部楼层
问题已解决,谢谢关注
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表