模型上的点-->世界坐标系中点-->视点坐标系中的点--->图象坐标系中的点-->屏幕上的点
我想问的是:世界坐标系和视点坐标系用的是什么坐标系统,分别是左手系还是右手系。
为什么?
恳请有详细的回答。谢谢。。
4 个解决方案
#1
OpenGL中不存在世界坐标系,视点坐标系用右手系
他只认GL_MODELVIEW和GL_PROJECTION,
世界坐标是为了需要,一般当然是右手系,除非你glScalef(0,0,-1)...
他只认GL_MODELVIEW和GL_PROJECTION,
世界坐标是为了需要,一般当然是右手系,除非你glScalef(0,0,-1)...
#2
glscalef(-1,...)吧?
#3
世界坐标系是右手坐标系统,这个不用说了吧,而视点坐标系是左手坐标系,这是一个习惯,而不是必须的,在视点坐标系中,x轴向右,y轴向上,而视线方向一般是沿z轴的正向,这样就构成了一个左手坐标系。如果你规定视线沿z轴负向,则视点坐标系也是右手系。
#4
sorry,打错了,是glScalef(1,1,-1),其他的也可以,但左手系你一般喜欢Z指向里面把:)
2 allendragon() :
如果你规定视线沿z轴负向,则视点坐标系也是右手系
---
这才是习惯.从透视矩阵第3行(0,0,-2fn/(f-n),-(f+n)/(f-n))就可以看出了
其实左右手只是相对的说.
2 allendragon() :
如果你规定视线沿z轴负向,则视点坐标系也是右手系
---
这才是习惯.从透视矩阵第3行(0,0,-2fn/(f-n),-(f+n)/(f-n))就可以看出了
其实左右手只是相对的说.
#1
OpenGL中不存在世界坐标系,视点坐标系用右手系
他只认GL_MODELVIEW和GL_PROJECTION,
世界坐标是为了需要,一般当然是右手系,除非你glScalef(0,0,-1)...
他只认GL_MODELVIEW和GL_PROJECTION,
世界坐标是为了需要,一般当然是右手系,除非你glScalef(0,0,-1)...
#2
glscalef(-1,...)吧?
#3
世界坐标系是右手坐标系统,这个不用说了吧,而视点坐标系是左手坐标系,这是一个习惯,而不是必须的,在视点坐标系中,x轴向右,y轴向上,而视线方向一般是沿z轴的正向,这样就构成了一个左手坐标系。如果你规定视线沿z轴负向,则视点坐标系也是右手系。
#4
sorry,打错了,是glScalef(1,1,-1),其他的也可以,但左手系你一般喜欢Z指向里面把:)
2 allendragon() :
如果你规定视线沿z轴负向,则视点坐标系也是右手系
---
这才是习惯.从透视矩阵第3行(0,0,-2fn/(f-n),-(f+n)/(f-n))就可以看出了
其实左右手只是相对的说.
2 allendragon() :
如果你规定视线沿z轴负向,则视点坐标系也是右手系
---
这才是习惯.从透视矩阵第3行(0,0,-2fn/(f-n),-(f+n)/(f-n))就可以看出了
其实左右手只是相对的说.