VC3DGraphicsWindowQt::VC3DGraphicsWindowQt(QWidget* parent, Qt::WindowFlags f)
{
osg::DisplaySettings* ds = osg::DisplaySettings::instance().get();
osg::setNotifyLevel(osg::NotifySeverity::FATAL); _traits = new osg::GraphicsContext::Traits();
_traits->windowDecoration = false;
_traits->x = ;
_traits->y = ;
_traits->width = ;
_traits->height = ;
_traits->doubleBuffer = true;
if (ds)
{
_traits->alpha = ds->getMinimumNumAlphaBits();
_traits->stencil = ds->getMinimumNumStencilBits();
_traits->sampleBuffers = ds->getMultiSamples();
_traits->samples = ds->getNumMultiSamples();
}
if (parent)
{
_traits->width = parent->width();
_traits->height = parent->height();
} // create widget if it does not exist
if (!m_opengl_widget)
{
// WindowFlags
Qt::WindowFlags flags = f | Qt::Widget;
// create widget
m_opengl_widget = new VC3DQtOSGWidget(parent, flags);
} m_opengl_widget->setMouseTracking(true);
m_opengl_widget->setFocusPolicy(Qt::WheelFocus);
m_opengl_widget->setGraphicsWindow(this);
useCursor(_traits->useCursor); // initialize State
setState(new osg::State);
getState()->setGraphicsContext(this); // initialize contextID
if (_traits.valid() && _traits->sharedContext.valid())
{
getState()->setContextID(_traits->sharedContext->getState()->getContextID());
incrementContextIDUsageCount(getState()->getContextID());
}
else
{
getState()->setContextID(osg::GraphicsContext::createNewContextID());
} // make sure the event queue has the correct window rectangle size and input range
#if (OPENSCENEGRAPH_MAJOR_VERSION == 3) && (OPENSCENEGRAPH_MINOR_VERSION == 2)
getEventQueue()->syncWindowRectangleWithGraphcisContext();
#else
getEventQueue()->syncWindowRectangleWithGraphicsContext();
#endif
}

VC3DGraphicsWindowQt的更多相关文章

  1. TeslaManage 2.0编译日志

    1>------ 已启动全部重新生成: 项目: TeslaManage, 配置: Debug x64 ------1> Moc'ing teslamanage.h...1> Uic' ...

随机推荐

  1. Nginx服务rewrite模块功能说明 网站自动跳转功能

    实现域名地址信息跳转,用于做伪静态地址 www.impkk.com/oldboy?edu.html 动态地址 www.impkk.com/oldboy-edu.html 伪静态地址 rewrite ^ ...

  2. find 查找文件的命令

    find顾名思义就是查找,Linux下find命令提供相当多的查找条件,可以在众多文件或目录下查找你想要的任何文件或目录. 语法: find filename 我当前目录下有aaa.txt和bbb.t ...

  3. MaxPlus WStr Python 中的字符串传递给 MaxPlus

    MaxPlus WStr Python 中的字符串传递给 MaxPlus 在 MaxPlus 中,很多方法的参数使用的字符串的类是 WStr,所以在 Python 中,我们传递字符串的时候,就要把 P ...

  4. 二、操作XML DOM:XML Document

    需要添加的命名空间:using System.Xml; 一.创建xml文件: 1.XmlDocument方式创建 XmlDocument xmldoc = new XmlDocument(); //加 ...

  5. Oracle之约束

    数据的完整性用于确保数据库数据遵从一定的商业的逻辑规则.在oracle中,数据完整性可以使用约束.触发器.应用程序(过程.函数)三种方法来实现,在这三种方法中,因为约束易于维护,并且具有最好的性能,所 ...

  6. Javascript基础(1)

    1 Javascript介绍 1.1 js是一款运行在客户端的网页编程语言 1.2 组成部分 (1)ECMAScript:ECMAScript不是一门语言,而是一个标准.符合这个标准的比较常见的有:J ...

  7. Java中String、StringBuffer、StringBuilder、StringTokenizer的区别

    Java语言中,有4个类可以对字符或字符串进行操作,它们是Character.String.StringBuffer.StringTokenizer,其中Character用于单个字符操作,Strin ...

  8. google Guava包的reflection(反射)解析

    译者:万天慧(武祖) 由于类型擦除,你不能够在运行时传递泛型类对象——你可能想强制转换它们,并假装这些对象是有泛型的,但实际上它们没有. 举个例子: ArrayList<String> s ...

  9. [Dart] Manipulate Lists/Arrays in Dart

    We will learn how to work with Lists using a variety of methods made available in the dart:core libr ...

  10. c# 关于mongo bson转json的问题

    问题解决自:https://stackoverflow.com/questions/27132968/convert-mongodb-bsondocument-to-valid-json-in-c-s ...