查看: 3029|回复: 7

关于空间坐标系和默认相机视点的问题?

[复制链接]

该用户从未签到

发表于 2010-6-28 21:33:36 | 显示全部楼层 |阅读模式
求教:      假设场景中只加载一个模型model = readNodeFile(“cow.osg”);
      用viewer.run()显示的时候 ,其空间坐标系是怎样的?
      用while(!viewer.done())
         {
              。。。。。。。
              。。。。。。。

              viewer.frame();
         } 的时候,空间坐标系又是怎样?

为什么这两个显示的空间位置不同呢?
现在混乱中,求教~~~~

该用户从未签到

发表于 2010-6-29 08:15:30 | 显示全部楼层
viewer.run()中设置了一个默认的TrackballManipulator漫游器,而如果您使用while仿真循环的话,则需要自己用setCameraManipulator设置,否则是不会自动“回到零位”的

漫游器的“回到零位”操作将自动把所有场景对象囊括在视图中,并保证Z正方向向上,X正方向向的右手坐标系;否则如果您没有自己设定观察矩阵,那么将使用OpenGL默认的Z正方向向屏幕外,X正方向向的右手坐标系

该用户从未签到

 楼主| 发表于 2010-6-29 09:53:00 | 显示全部楼层
2# array
漫游器的“回到零位”操作将自动把所有场景对象囊括在视图中,并保证Z正方向向上,X正方向向左的右手坐标系;


多谢~~~

该用户从未签到

发表于 2010-6-29 10:22:12 | 显示全部楼层
2# array
"并保证Z正方向向上,X正方向向左右手坐标系;否则如果您没有自己设定观察矩阵,那么将使用OpenGL默认的Z正方向向屏幕外,X正方向向左右手坐标系"

应该是:X正方向向右右手坐标系

该用户从未签到

 楼主| 发表于 2010-6-29 10:43:21 | 显示全部楼层
4# shicream 是的 ,我也是这么想的

该用户从未签到

 楼主| 发表于 2010-6-30 06:53:41 | 显示全部楼层
2# array 是不是
OSG默认漫游器,其坐标系的X轴正方向是往左的;
而OpenGL默认的坐标系的X轴的正方向是往右的??
求教~~~~

该用户从未签到

发表于 2010-6-30 08:41:11 | 显示全部楼层
OSG默认漫游器,其坐标系的X轴正方向是往左的
这里是我的笔误而已,呵呵,楼上已经纠正过了

该用户从未签到

发表于 2010-6-30 13:23:30 | 显示全部楼层
本帖最后由 qele 于 2010-6-30 13:27 编辑

6# jackaduma

默认摄像机位置与方向,只有一个:默认位置为原点,方向-z轴。这个默认值对以后的视点变换操作是非常关键的。

默认的视点方位,可以理解为受观察矩阵影响,变换到新的方位观察场景对象。osg的track漫游器在设置初始视点时,改变了观察矩阵,从而摄像机方向变成了(0,-1, 0)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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