来自osg::viewer的RGB图像

RGB image from osg::viewer

本文关键字:RGB 图像 viewer osg 来自      更新时间:2023-10-16

我有这样的代码:

osgViewer::Viewer viewer;
viewer.setSceneData(scene);
viewer.setCameraManipulator( tracker.get() );
viewer.setUpViewInWindow(10,10,1024,768,0);
viewer.realize();

现在,这个查看器对象为我提供了一个场景视图,其中包含车辆模型、地形等。我想从这个查看器中获取RGB图像,无论数据是如何写入场景的。

从本质上讲,我想要来自查看器的 RGB 图像,其中没有关于哪些数据写入场景的先前信息。如果查看器在 1024*768 窗口中显示某些内容,我希望它作为 RGB 图像。

如果我理解正确,那么osg::ScreenCaptureHandler应该符合你的要求。它是位于 include/osgViewer 中的 ViewerEventHandlers 标头的一部分。

它是一个简单的事件处理程序,在按键时捕获并存储当前视图的图像。您可以使用它或根据自己的喜好进行调整。