查看: 1490|回复: 3

操作器鼠标滚轮放大缩小失灵

[复制链接]

该用户从未签到

发表于 2014-7-28 13:52:18 | 显示全部楼层 |阅读模式
本帖最后由 rubby 于 2014-7-31 21:28 编辑

MFC+osg的程序:(osg 3.0.1版本 VC2010)

程序中定义的操作器如下:

        trackball = new osgGA::TrackballManipulator();
        keyswitchManipulator = new osgGA::KeySwitchMatrixManipulator;

        // Add our trackball manipulator to the switcher
        keyswitchManipulator->addMatrixManipulator( '1', "Trackball", trackball.get());
       

        // Init the switcher to the first manipulator (in this case the only manipulator)
        keyswitchManipulator->selectMatrixManipulator(0);  // Zero based index Value

但是,当场景图加载cow.osg后,
发现操作器鼠标滚轮放大缩小失灵了,但鼠标左右键仍然是好的。

win7下操作器鼠标滚轮放大缩小 都是ok的。
但是win8 下 操作器鼠标滚轮放大缩小 失灵】


有遇到相同问题的?

请问各位大哥,这大概是什么原因?
小弟不胜感激。

另外,请教一下:  osgGA::TrackballManipulator源码在哪里?
我在src\osgGA\TrackballManipulator.cpp文件,发现仅有如下代码。这不全啊。

  1. #include <osgGA/TrackballManipulator>

  2. using namespace osg;
  3. using namespace osgGA;



  4. /// Constructor.
  5. TrackballManipulator::TrackballManipulator( int flags )
  6.    : inherited( flags )
  7. {
  8.     setVerticalAxisFixed( false );
  9. }


  10. /// Constructor.
  11. TrackballManipulator::TrackballManipulator( const TrackballManipulator& tm, const CopyOp& copyOp )
  12.     : osg::Object(tm, copyOp),
  13.       inherited( tm, copyOp )
  14. {
  15. }
复制代码

该用户从未签到

 楼主| 发表于 2014-7-29 21:03:10 | 显示全部楼层
哪位大哥,给点提示,不一定要解决问题,多谢~
小弟拜谢

该用户从未签到

发表于 2014-7-31 11:46:28 | 显示全部楼层
显然您没有注意过类继承的事情

该用户从未签到

 楼主| 发表于 2014-7-31 21:27:52 | 显示全部楼层
array 发表于 2014-7-31 11:46
显然您没有注意过类继承的事情



已经在  OrbitManipulator 发现了代码。

我是在win7 下 操作器鼠标滚轮放大缩小 都是ok的。
但是在win8 下 操作器鼠标滚轮放大缩小 失灵。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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