作业帮 > 综合 > 作业

opengl 世界坐标系 和 局部坐标系

来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/07/16 20:25:28
opengl 世界坐标系 和 局部坐标系
opengl编程指南上的一个例子,地球绕太阳公转,自己也能自转.但是代码中是怎么从世界坐标系 转变到 局部坐标系的.
下面是主要的代码部分.

opengl 世界坐标系 和 局部坐标系
glRotatef 旋转
glTranslatef 平移
它们一直在操作坐标系啊
所谓的公转自转就是坐标系发生变化后绘制,从而使固定视角的窗口呈现动态效果
再问: 非常感谢你,但是我还有些不明白的地方,希望请教你: 那固定坐标系和局部坐标系究竟是啥关系?? 上面的函数是不是都改变了局部坐标系?? 固定坐标系是不是不会被改变?? 上面的代码是不是对物体的局部坐标系改变后 又放回到固定到固定坐标系中的?? 物体绕向量旋转是绕固定坐标系中的向量旋转还是绕局部坐标系中的向量?
再答: OPENGL坐标系可分为:世界坐标系和当前绘图坐标系。 世界坐标系以屏幕中心为原点(0, 0, 0)。你面对屏幕,你的右边是x正轴,上面是y正轴,屏幕指向你的为z正轴。长度单位这样来定: 窗口范围按此单位恰好是(-1,-1)到(1,1)。 当前绘图坐标系是 绘制物体时的坐标系。程序刚初始化时,世界坐标系和当前绘图坐标系是重合的。当用glTranslatef(),glScalef(), glRotatef()对当前绘图坐标系进行平移、伸缩、旋转变换之后, 世界坐标系和当前绘图坐标系不再重合。改变以后,再用glVertex3f()等绘图函数绘图时,都是在当前绘图坐标系进行绘图,所有的函数参数也都是相 对当前绘图坐标系来讲的。 这段话是csdn中的,应该能解决你的疑惑