我们在操作视图的时候,按下Escape视图被动关闭,操作起来着实不方便。如何才能禁用Escape关闭视图呢?
查看源码发现如下:
/** Set the key event that the viewer checks on each frame to see if the viewer's done flag should be set to
* signal end of viewers main loop.
* Default value is Escape (osgGA::GUIEVentAdapter::KEY_Escape).
* Setting to 0 switches off the feature.*/
void setKeyEventSetsDone(int key) { _keyEventSetsDone = key; }
内部设置了默认值,按下KEY_Escape时关闭视图。提示还讲到,设置为0即可关闭。
因此,我们在初始化OSG的时候设置
Viewer->setKeyEventSetsDone(0);
这样,按下KEY_Escape视图再也不会被关闭了。