我在OSG和Qt都是新手,我仍然想在我的OSG窗口上制作Qt HUD,我想要的是在OSG场景中修复的Qt界面元素,而不是在模型中旋转。问题是,我需要Qt元素INSIDE osg场景,而不是Qt窗口内的OSG场景(就像在OSGviewerQt示例中一样)。
我还得到的是OSGQtWidgets示例,其中包含--useWidgetImage --fullscreen参数,它显示了OSG模型上的固定Qt控件。问题是,它为OSG模型的qt元素创建了新的(FIXED)相机 - 因此,用户无法旋转和移动OSG模型,因为相机不透明。
所以问题是:有没有办法制作透明相机,里面有可用的Qt元素?或者还有其他方法可以实现我的目标吗?
提前谢谢!
答案 0 :(得分:1)
我首先无法为自己尝试这个,但您可以尝试在Orthogonal“HUD”相机上设置属性,让事件传递给常规OSG查看器:
camera->setAllowEventFocus(false);
如果您使用的是最新版本的osgQtWidgets.cpp,则需要在414行附近添加。