|
响应array建议,单独开个帖子,说明我的问题
osgGA::AnimationPathManipulator暂停以后,切换到其它手动漫游器,过一段时间再切换到自动漫游,已经不是原来停顿的地方了,难道是后台还是在自动漫游?
-
- //View视图中切换矩阵操作器
- void CNTVRView::OnDisplaypath()
- {
- mOSG ->PlayPath("walk.path");
- //如果当前暂停,则发送消息
- //if (ampPause)
- // SendMessage(WM_KEYDOWN, 0x70);
- }
- void CNTVRView::OnStopdisplay()
- {
- mOSG ->StopPath();
- //如果当前没有暂停,则发送消息
- //if (!ampPause)
- // SendMessage(WM_KEYDOWN, 0x70);
- }
- void PlayPath(std::string filepath)
- {
- //读取漫游路径
- if (!amp.valid())
- amp = new osgGA::AnimationPathManipulator(filepath);
- //else
- // amp->_isPaused=false;
- //当前手动漫游
- moldManipulator=mViewer->getView(0)->getCameraManipulator() ;
- //设置固定漫游
- mViewer->getView(0)->setCameraManipulator(amp.get());
- }
- void StopPath()
- {
- if(moldManipulator.valid())
- {
- //停止自动漫游
- //amp->_isPaused=true;
- mViewer->getView(0)->setCameraManipulator(moldManipulator.get()) ;
- }
- }
复制代码
自动漫游停顿的地方
重新开始漫游的位置 |
|