查看: 835|回复: 2

关于节点跟踪

[复制链接]

该用户从未签到

发表于 2012-12-13 11:58:01 | 显示全部楼层 |阅读模式
我想按下M键后 对节点进行跟踪 但是跟踪的时候视点不跟着模型走 有横向的飘逸 请问是为什么?下边是M键相应的代码部分 还有我想再按下M时候切回普通的模式 应该怎么做? 求指点 谢谢!
  1. if(ea.getKey() == 'm' || ea.getKey() == 'M'){        //切换跟踪模式
  2.                 osg::ref_ptr<osgGA::NodeTrackerManipulator> tm;
  3.                 tm = new osgGA::NodeTrackerManipulator;
  4.                                        
  5.                 osg::ref_ptr<osgGA::CameraManipulator> m_camera = new osgGA::NodeTrackerManipulator;
  6.                 if(track == false){
  7.                         tm->setTrackerMode(osgGA::NodeTrackerManipulator::NODE_CENTER_AND_ROTATION);
  8.                         tm->setRotationMode(osgGA::NodeTrackerManipulator::ELEVATION_AZIM);
  9.                         tm->setTrackNode(group->getChild(0));
  10.                         m_camera = viewer.getCameraManipulator();
  11.                         viewer.setCameraManipulator(tm);
  12.                         track = true;
  13.                 }else {
  14.                         track = false;
  15.                 }
  16.                 return true;
  17.         }
复制代码

该用户从未签到

发表于 2012-12-14 08:25:19 | 显示全部楼层
KeySwitchMatrixManipulator 参照这个实现

该用户从未签到

 楼主| 发表于 2012-12-14 10:39:54 | 显示全部楼层
liuzhiyu123 发表于 2012-12-14 08:25
KeySwitchMatrixManipulator 参照这个实现

好的 谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表