#include<osgViewer/ViewerEventHandlers>
//两个事件要看看返回值
class **Test** :public osgGA::GUIEventHandler
{public:
//ea可以获得事件类型,aa得到当前场景viewer
bool handle(const osgGA::GUIEventAdapter& ea,osgGA::GUIActionAdapter& aa)
{std::cout<<"abcd"<<std::endl;//简单输出
return true;
}
}
class HelpHandler:public osgGA::GUIEventHandler
{
public:
........
int main()
{osg::ref_ptr<osgViewer::Viewer> viewer=new osgViewer::Viewer;
osg::ref_ptr<osg::Node> node=new osg::Node;
node=osgDB::readNodeFile("glider.osg");
**osg::ref_ptr<**Test**> *ti*=new **Test**;**
**viewer->addEVentHandler(*ti*);**
//添加帮助事件(第二个事件)
viewer->addEventHandler(new osgViewer::HelpHandler);
viewer->setSceneData(node.get());
return viewer->ren();
}
osg事件处理(两个)
最新推荐文章于 2024-04-15 23:01:30 发布