计算机图形学实验报告华北电力大学,华北电力大学计算机图形学实验报告.doc...

华北电力大学计算机图形学实验报告

科 技 学 院

课程设计(综合实验)报告

( 2013 -- 2014 年度第 2 学期)

实验名称 OpenGL基本图元绘制实验

课程名称 计算机图形学

|

|

专业班级:计算机11K1 学生姓名:曲强

学 号:111909010118 成 绩:

指导教师:姜丽梅 实验日期:2014.6.5

实验一、OpenGL基本图元绘制实验

实验目的及要求

掌握计算机图形学及交互式计算机图形学的定义,了解OpenGL的功能及工作流程,掌握基于OpenGL Glut库的程序框架。

掌握基本的二维线画图元的绘制算法及属性,掌握OpenGL基本图元的绘制。

理解二维、三维图形的绘制流程,掌握二维图形和三维图形的图形变换。

了解形体的真实感表示的内容,包括消隐技术、简单光照明模型、多边形的明暗绘制技术以及纹理映射技术。

要求使用OpenGL及GLUT库在Visual C++环境下编写图形绘制程序实现基本图元绘制。

要求对绘制的简单场景综合利用几何变换或gluLookAt函数实现交互式三维观察程序。

实验内容

在两个具有不同属性的窗口中分别显示一个旋转的三角形来演示单缓存和双缓存,在旋转过程中不断改变图形的颜色,利用鼠标或菜单可终止/启动图形旋转。明确程序包括哪些函数,各个函数的功能以及整个流程,从而为进一步做综合性的图形绘制实验奠定基础。

所用仪器、设备

Windows XP系统,Visual C++,OpenGL及GLUT库

实验方法与步骤

先配置环境,把相关文件放到相应的文件夹

C:\Program Files\Microsoft Visual Studio\VC98\Include\GL

C:\WINDOWS\system32

C:\Program Files\Microsoft Visual Studio\VC98\Lib

再通过VC++进行编译

程序代码

#include

#include

#include < stdio.h >

#include

#define DEG_TO_RAD 0.017453

static GLfloat theta = 0.0;

GLfloat r = 1.0; //设置三角形的初始颜色

GLfloat g = 0.0;

GLfloat b = 0.0;

int singleb,doubleb;

void display(void)

{ glClear(GL_COLOR_BUFFER_BIT); //三角形颜色渐变

glColor3f(r, g,b);

r = r - 0.002;

g = g + 0.002;

b = b + 0.001;

if(r < 0.001)

{ r = 1.0;

g = 0.0;

b = 0.0;}

glBegin(GL_POLYGON);

glVertex2f(cos(DEG_TO_RAD*theta), sin(DEG_TO_RAD*theta));

glVertex2f(cos(DEG_TO_RAD*(theta+120)), sin(DEG_TO_RAD*(theta+120)));

glVertex2f(cos(DEG_TO_RAD*(theta+240)), sin(DEG_TO_RAD*(theta+240)));

glEnd();

glutSwapBuffers();

}

void spinDisplay (void) //三角形转动弧度设置

{

theta = theta +5;

if (theta > 360.0)

theta = theta - 360.0;

glutSetWindow(singleb);

glutPostWindowRedisplay(singleb);

glutSetWindow(doubleb);

glutPostWindowRedisplay(doubleb);

}

void spinDisplay1(void)

{

glutPostRedisplay();

}

void m

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值