本文整理汇总了C++中osgviewer::Viewer::getWindows方法的典型用法代码示例。如果您正苦于以下问题:C++ Viewer::getWindows方法的具体用法?C++ Viewer::getWindows怎么用?C++ Viewer::getWindows使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类osgviewer::Viewer
的用法示例。
在下文中一共展示了Viewer::getWindows方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: InitWindowsSystem
void InitWindowsSystem (osgViewer::Viewer& viewer, const char* const title, int x, int y, int width, int height)
{
viewer.setUpViewInWindow(x, y, width, height);
//Get the traits of the current window
osg::ref_ptr< osg::GraphicsContext::Traits > traits = new osg::GraphicsContext::Traits( *viewer.getCamera()->getGraphicsContext()->getTraits());
//Set the title
traits->windowName = title;
// disable vertical sync
traits->vsync = false;
//Create a new graphics context with the modified traits
osg::ref_ptr< osg::GraphicsContext > gc = osg::GraphicsContext::createGraphicsContext( traits.get() );
gc->realize();
gc->makeCurrent();
// set the vertical black off by default
osgViewer::Viewer::Windows windows;
viewer.getWindows(windows);
for(osgViewer::Viewer::Windows::iterator itr = windows.begin(); itr != windows.end(); ++itr) {
osgViewer::GraphicsWindow* const graphicsWindow = (*itr);
graphicsWindow->setSyncToVBlank (false);
}
//Create the new camera which is a copy of the current camera in the viewer
osg::ref_ptr<osg::Camera> cam = new osg::Camera( *viewer.getCamera() );
//Set the cameras graphics context to the gc we made above
cam->setGraphicsContext( gc );
//assign the viewer the new camera
viewer.setCamera( cam.get() );
// int the camera default perspective matrix
SetCameraProjectionMatrix (viewer, 60.0f, dFloat (width) / height, 0.01, 1000.0f);
// set the file find callback
osg::ref_ptr<DemosFindFileCallback> filecallback = new DemosFindFileCallback;
osgDB::Registry::instance()->setFindFileCallback (filecallback.get());
}