计算机图形学实验指导(一)

计算机图形学实验指导(一)

ID:45991610

大小:74.50 KB

页数:3页

时间:2019-11-20

计算机图形学实验指导(一)_第1页
计算机图形学实验指导(一)_第2页
计算机图形学实验指导(一)_第3页
资源描述:

《计算机图形学实验指导(一)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、计算机图形学实验指导(一)-OpenGL基础1.综述这次试验的目的主耍是使人家初步熟悉OpenGL这一图形系统的用法,编程平台是VisualC++,它对OpenGL提供了完备的支持。尽管0penGL包括渲染命令,但却独立于任何窗口系统和操作系统。因此,OpenGL并不包括用来打开窗口以及从键盘或鼠标读取事件的命令。在这里,我们应用GLUT库简化Windows窗口操作。2.准备GLUT库卜■载glut压缩包示,解压,把glut32.dll放在Windows的system32目录下,将glut32.1ib放在C:pr

2、ogramfilesMicrosoftVisualStudioVC98Lib目录屮,将glut.h放在C:prograinfilesVMicrosoftVisualStudioWC98IncludeGL

3、~1录中2•在VC中新建项目新建一个项目。选择菜单File中的New选项,弹出一个分页的对话HE,选中页Projects中的Win32ConsoleApplication项,然后填入你自己的Projectname,回车即可。VC为你创建一个工作区(Workspace),伤〈的项目就放在这个丁•作区里。为

4、项目添加文件为了使用OpenGL,我们需耍在项冃中加入相关的Lib文件:glut32.1ib选中菜单Project->Settings项,在link选项卡中的Object/Librarymodules栏中加入glut32.1ibo选择菜单File中的New选项,弹出一个分贝的对话框,选中页Files中的C++sourcefile,填入文件名,钩选添加到刚才建的那个工程里,然后就可以开始编程了。3.一个OpenGL的例子#include〃初始化OpenGLvoidinit(void){glClc

5、arColor(0.0f,O.Of,O.Of,O.Of);//设置背景颜色glShadeModel(GL_FLAT);//设置明暗处理}〃主要的绘制过程voiddisplay(void){glClear(GL_COLOR_BUFFER_BIT);//it除颜色缓存glBegin(GL_LINES);//开始画直线glColor3f(1.0f,l.Of,1.Of);//设置颜色为口色glVertex2f(30.0f,30.00;//第一根线的两个端点glVertex2f(200.0f,400.00;glColor3f

6、(1.0f,O.Of,O.Of);//设置第二根线的颜色为红色glVertex2f(25.0f,350.0f);//第二根线的两个端点glVertex2f(250.0f,50.0f);glEnd();//H线结束glBegin(GL_TRIANGLES);//开始画三角形,注意,没有设颜色,所以还是红色glVertex2f(400.0f,100.0f);//H角形的三个顶点glVertex2f(600.0f,lOO.Of);glVertex2f(500.0f,300.0f);glEnd();//结束画三角形glFl

7、ush();//开始绘制}〃在窗口改变人小吋调用voidreshape(intwidth,intheight){glViewport©0,width,height);//设置视口glMatrixMode(GL_PROJECTION);//设置当前为投影变换模式glLoadlden山y();〃用单位矩阵替换当前变换矩阵gluOrtho2D(0.0,width,0.0,height);//设置正交投影视图体}〃处理键盘voidkeyboard(unsignedcharkey,intx,inty){switch(key)

8、{case27://esc键退出exit(O);break;default:break;intmain(intargc,char**argv){glutlnit(&argc,argv);//初始化glutglutInitDisplayMode(GLUT_SINGLEIGLUT.RGB);//设置为单缓存,RGB模式glutInitWindowSize(640,480);//设置窗口大小glutInitWindowPosition(0,0);//设置窗口起始位置glutCreateWindow("Basic");//

9、设置窗口标题init();〃初始化OpenGLglutDisplayFunc(display);//设置显示回调函数glutReshapeFunc(reshape);//设置reshape

10、叫调函数glutKeyboardFunc(keyboard);//设置键盘回调函数glutMainLoopO;//进入上循环return0;程序说明:每个函数的具休含义在

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。