图形学实验报告四

2018-12-17 12:54

《计算机图形学》实验报告

详细代码:3414028995@qq.com

一、实验目的 1,使用opengl函数完成一个图形动画程序,显示太阳、地球、月亮之间的运行关系。 2,采用opengl材质、光照技术完成一个在小盒内的运动小球,要求小球作为移动光源,观察运行效果。 二、实验要求 1.掌握Window图形编程的基本方法; 2.掌握如何进行简单动画制作 3.掌握如何采用opengl材质、光照技术 三、实验设备(环境) Windows系统,vs2017 四、实验步骤与结果 1.使用opengl函数完成一个图形动画程序,显示太阳、地球、月亮之间的运行关系。 使用的一些函数: glShadeModel(GL_FLAT);GL_FLAT 则只是以指定的某一点的单一色绘制其他所有点 glPushMatrix();//进栈 gluLookAt(0.0, 0.0, 5, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0);//观察角度 glRotatef((GLfloat)year, 0.0, 1.0, 0.0);//旋转,(GLfloat)year角度设置,0.0, 1.0, 0.0坐标设置 glTranslatef(2.0, 0.0, 0.0);//平移,后面代表坐标,沿着x正方向平移 glPopMatrix();//出栈 glutSwapBuffers();//实现双缓冲 glViewport(0, 0, (GLsizei)w, (GLsizei)h);//矩形大小的调整 运行截图: 完整代码: #include\ #include #defineGLUT_DISABLE_ATEXIT_HACK #include staticfloat year = 0, day = 0; void init(void) { glClearColor(0.0, 0.0, 0.0, 0.0); glShadeModel(GL_FLAT);//设定着色模式,使用图元中某个顶点的颜色来渲染整个图元。 } void display(void) { glClear(GL_COLOR_BUFFER_BIT); glColor3f(0.0, 1.0, 0.0); glLoadIdentity(); glPushMatrix(); gluLookAt(0.0, 0.0, 5, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0); //绘制太阳 glRotatef((GLfloat)year, 0.0, 1.0, 0.0); glutWireSphere(0.8, 25, 25); //绘制地球 glRotatef((GLfloat)year, 0.0, 1.0, 0.0); glTranslatef(2.0, 0.0, 0.0); glRotatef((GLfloat)day, 0.0, 1.0, 0.0); glutWireSphere(0.2, 20, 20); //绘制月球 glRotatef((GLfloat)year, 0.0, 1.0, 0.0); glTranslatef(0.4, 0.0, 0.0); glRotatef((GLfloat)day, 0.0, 1.0, 0.0); glutWireSphere(0.1, 15, 15); //glutWireCube(2.0); glPopMatrix(); glutSwapBuffers(); } void spinDisplay(void) { year = year + 0.03; if (year > 360.0) { year = year - 360.0; } } day = day + 0.06; if (day > 360.0) { day = day - 360.0; } glutPostRedisplay(); void reshape(intw, inth) { glViewport(0, 0, (GLsizei)w, (GLsizei)h);//函数作用:用一个视景体截取图像 //glFrustum(-1.0,1.0,-1.0,1.0,-1.0,1.0); glMatrixMode(GL_PROJECTION);//mode 指定哪一个矩阵堆栈是下一个矩阵操作的目标,参数表示接下来要进行投影相关的操作 glLoadIdentity();//设置当前变化矩阵为单位矩阵;单位矩阵就是对角线上都是1,其余元素皆为0的矩阵。然后复位 //glOrtho(-3.0,3.0,-3.0,3.0,-3.0,3.0); glFrustum(-1.0, 1.0, -1.0, 1.0, 1.5, 20); glMatrixMode(GL_MODELVIEW);//进行视景相关的操作 //glLoadIdentity(); } int main(intargc, char** argv) {


图形学实验报告四.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:生物质混合气投资建设项目可行性研究报告-广州中撰咨询

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: