|
|
我画了三条直线,用来模拟直角坐标的坐标轴,原点所在位置的坐标是(-30,-15,-10),三条直线的长度都是50,z取坐标系的是负方向,也就是终点的z坐标为-60
然后用了gluLookAt函数,其中eyez的取值为什么可以是-30?而且是在eyez为-30的时候效果好,试了别的数有时会减切掉一部分图像。
不懂了。物体在z方向的范围是-10到-60,那么我把视点设置到z=-30的位置,不就应该看不到z>-30范围内的物体了吗?
窗口大小是452*509,代码贴一下,大侠们给我讲讲啊!
//创建3条正交的直线
listname = glGenLists(2);
glNewList(listname, GL_COMPILE);
glLineWidth(2.0);
glBegin(GL_LINE_STRIP);
glColor3f(1.0f, 1.0f, 0.0f);
glVertex3f(-30.0, -15.0, -10.0);
glVertex3f(20.0, -15.0, -10.0);
glEnd();
glBegin(GL_LINE_STRIP);
glColor3f(1.0f, 1.0f, 0.0f);
glVertex3f(-30.0, -15.0, -10.0);
glVertex3f(-30.0, 35.0, -10.0);
glEnd();
glBegin(GL_LINE_STRIP);
glColor3f(1.0f, 1.0f, 0.0f);
glVertex3f(-30.0, -15.0, -10.0);
glVertex3f(-30.0, -15.0, -60.0);
glEnd();
glEndList();
//画图的部分:
glPushMatrix();
gluLookAt(-5.0, 10.0, -30.0, -30.0, -15.0, -60.0, 0, 1, 0);
glCallList(listname);
glPopMatrix(); |
|