查看: 1146|回复: 6

osg中axis范围的设定

[复制链接]

该用户从未签到

发表于 2014-4-1 21:25:03 | 显示全部楼层 |阅读模式
请问一下,osg中如何设定axis的x,y,z坐标范围呢?有没有像matlab中xlim,ylim这样的函数呢?

多谢!

该用户从未签到

发表于 2014-4-1 22:11:32 | 显示全部楼层
OSG中的axis一般是在旋转里当做旋转轴吧,它的x,y,z坐标意义好像不大。

该用户从未签到

发表于 2014-4-1 22:55:24 | 显示全部楼层
OSG中的axis就是用向量表示,所以没有约束条件;
但作为向量可以用单元归一化nomalize()函数,来保持约束轴的各个分量的转角比例保持向量的方向性一致,而不受模长的影响。

该用户从未签到

 楼主| 发表于 2014-4-2 16:00:45 | 显示全部楼层
allan 发表于 2014-4-1 22:11
OSG中的axis一般是在旋转里当做旋转轴吧,它的x,y,z坐标意义好像不大。

如果我画了一个正方形,边长不同,在osg上显示的大小是一样的。不设置axis的话,怎样设置可以使显示的正方形大小与其边长的大小一致呢?

该用户从未签到

发表于 2014-4-3 12:41:26 | 显示全部楼层
你是用什么方式绘制正方体?osg自定的Box还是自己指定顶点坐标?我没看见画正方体还要指定axis值的啊。而且osg显示的大小一样可能也不是由于图形的尺寸没变,可能是照相机的位置变化了,所以你看到的图形是一样大的。你可以同时画几个不同尺寸的正方体来观察

该用户从未签到

 楼主| 发表于 2014-4-4 16:14:23 | 显示全部楼层
allan 发表于 2014-4-3 12:41
你是用什么方式绘制正方体?osg自定的Box还是自己指定顶点坐标?我没看见画正方体还要指定axis值的啊。而且 ...

我自己指定的顶点坐标,用 Geode->addDrawable()方法来画正方形。

我定义了相机的平移和旋转角度,设置了相机的投影和视图矩阵,所以照相机的位置按理说应该是不变的。是不是osg中有些方法会同时改变照相机的位置呢?

而且照相机必须向Z轴负方向移动一定距离才可以看到正方形,如果移动值为0,那么场景是全黑的,这个是为什么呢?

该用户从未签到

发表于 2014-4-8 21:16:18 | 显示全部楼层
第一个问题,你要通过相机的视图矩阵改变相机的位置需要把操作器关了,这样你设置的相机的观察矩阵才会起作用,第二个问题因为osg中相机的默认朝向是z轴负半轴,如果你相机离目标太远可能就啥都看不到了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

联系我们

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