查看: 1892|回复: 3

场景的控制

[复制链接]

该用户从未签到

发表于 2009-5-21 10:19:08 | 显示全部楼层 |阅读模式
现在我做了一个类似google的界面  界面使用了静态窗口分割  我想实现搜索的功能  就是在搜索窗口中搜索到指定地点的位置   然后让地球模型旋转到这个位置   相机我用的是追踪球漫游器   我想在搜索按钮的click方法中编写代码实现地球的旋转    主要是改变追踪球漫游器的_rotation值   不知道这样实现对不对? 下面是个截图   这样更好理解点

未命名11.JPG

该用户从未签到

发表于 2009-5-21 10:33:59 | 显示全部楼层
其实我更建议您自己派生MatrixManipulator编写一个新的漫游器,在其中响应您的按键并改变观察矩阵。基本的算法可以仿照TrackballManipulator,但是完全没有必要费尽心思去直接操作它,而且恐怕也做不到

漫游器与场景的接口函数是virtual osg::Matrixd  getMatrix () const 和virtual osg::Matrixd  getInverseMatrix (),把这两个函数处理好就可以了
  • TA的每日心情
    开心
    2019-11-11 10:36
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2009-5-21 23:33:23 | 显示全部楼层
    从当前视口过度到目的点其实不是那么简单的,如果直线过度,建议在当前视口建立一个关键点,在目的点建立一个关键点,然后计算距离,得到时间,结合角度形成Path,这样才能平滑过去,
  • TA的每日心情
    开心
    2019-11-11 10:36
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2009-5-21 23:34:33 | 显示全部楼层
    你那个地球做的倒是挺强的
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

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

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

    联系我们

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