资源描述:
《实验一opengl基本图形绘制》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验一 OpenGL基本图形绘制一、实验目的和要求:1、了解三维图形编程机制以及OpenGL三维图形绘制的程序结构;2、通过编程实现简单三维图形的绘制;3、掌握三维图形显示原理。二、实验内容:1、使用VisualC++6.0和OpenGL编写一个简单的三维程序。2、建议有能力的学生进一步学习OpenGL的复杂功能创建效果更好的三维图形;三、实验步骤:1、初步了解OpenGL的功能以及语法特点;2、下载glut包,复制glut32.dll到winnt/system32文件夹下,复制glut32.lib到vc98/lib文件夹下,复制glut.h到vc98/include/gl文件夹下;3、创建
2、VC工程:选择菜单File中的New选项,弹出一个分页的对话框,选中页Projects中的Win32ConsoleApplication项,然后填入你自己的Projectname,如Test,回车即可。VC为你创建一个工作区(WorkSpace),你的项目Test就放在这个工作区里;4、为项目添加文件:为了使用OpenGL,我们需要在项目中加入三个相关的Lib文件:glu32.lib、glut32.lib、opengl32.lib,这三个文件位于VC安装目录下的lib目录(如c:programfilesdevstudiovclib)中。选中菜单Project->AddToProjec
3、t->Files项(或用鼠标右键),把这三个文件加入项目,在FileView中会有显示。这三个文件请务必加入,否则编译时会出错。或者将这三个文件名添加到Project->Setting->Link->Object/libraryModules即可。点击工具条中NewTextFile按钮,新建一个文本文件,存盘为Test.c作为你的源程序文件,再把它加入到项目中,然后就可以开始编程了;5、请将下面的程序写入源文件Test.c;#include#includeconstintn=60;constGLfloatR=0.2f;constGLfloatPi=3.1
4、415926536f;voidmyDisplay(void){inti;glClear(GL_COLOR_BUFFER_BIT);//glShadeModel(GL_FLAT);//glShadeModel(GL_SMOOTH);//点glPointSize(2.0);glBegin(GL_POINTS);glVertex2f(0.0f,0.0f);glEnd();//由闭合折线组成的圆glBegin(GL_LINE_LOOP);glColor3f(1.0,1.0,0.0);for(i=0;i5、;glEnd();//由不闭合折线组成的两个三角形构成的六星阵图glBegin(GL_LINE_STRIP);glColor3f(1.0,0.0,0.0);glVertex2f(0.0,0.2);glVertex2f(0.1732,-0.1);glVertex2f(-0.1732,-0.1);glVertex2f(0.0,0.2);glEnd();glBegin(GL_LINE_STRIP);glVertex2f(0.0,-0.2);glVertex2f(0.1732,0.1);glVertex2f(-0.1732,0.1);glVertex2f(0.0,-0.2);glEnd();//连续
6、三角形组成的扇形glBegin(GL_TRIANGLE_FAN);glVertex2f(0.5,0.5);glVertex2f(0.5,1.0);glColor3f(0.8,0.2,0.5);glVertex2f(0.8,0.9);glColor3f(0.2,0.5,0.8);glVertex2f(0.9,0.8);glColor3f(0.8,0.5,0.2);glVertex2f(1.0,0.5);glEnd();//虚线glLineWidth(3.0);glEnable(GL_LINE_STIPPLE);glLineStipple(2,0x0F0F);glBegin(GL_LINES);
7、glColor3f(0.0,0.0,1.0);glVertex2f(-0.5f,1.0f);glColor3f(1.0,1.0,1.0);glVertex2f(-0.5f,-1.0f);glEnd();//线glLineWidth(0.5);glDisable(GL_LINE_STIPPLE);glBegin(GL_LINES);glColor3f(1.0,0.0,0.0);glVertex2f(0.5f,1