- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
南邮计算机图形学实验报告(完整版)
实 验 报 告
实验名称 指导教师 实验类型 综合 实验学时 2 实验时间 一、实验目的和要求
能够灵活的运用OpenGL图形API函数,基于C++程序语言,自行设计出各种各样的计算机图形方案并调整不同的透视模型。学会配置OpenGL图形函数API,设计(1)在屏幕上显示基本3D图形;(2)设置图形的表面光照模型及投影变换模型。
1.所有图形(例如球体,正方体)有清晰的轮廓。
2.学会设置图形表面的光照色彩以及投影变换模型。
3.尽可能采用高效的算法,以降低时间复杂性和空间复杂性。
二、实验环境(实验设备)
硬件:微机
软件:vs2012
实 验 报 告
三、实验过程描述与结果分析
实验代码:
#includeGL/glut.h
// 绘制立方体
// 将立方体的八个顶点保存到一个数组里面
static const float vertex_list[][3] =
{
-0.5f, -0.5f, -0.5f,
0.5f, -0.5f, -0.5f,
-0.5f, 0.5f, -0.5f,
0.5f, 0.5f, -0.5f,
-0.5f, -0.5f, 0.5f,
0.5f, -0.5f, 0.5f,
-0.5f, 0.5f, 0.5f,
0.5f, 0.5f, 0.5f,
};
// 将要使用的顶点的序号保存到一个数组里面
static const GLint index_list[][2] =
{
{0, 1},
{2, 3},
{4, 5},
{6, 7},
{0, 2},
{1, 3},
{4, 6},
{5, 7},
{0, 4},
{1, 5},
{7, 3},
{2, 6}
};
//光照模型
void init(void)
{
GLfloat ambient[] = { 0.0, 0.0, 0.0, 1.0 };
GLfloat diffuse[] = { 1.0, 1.0, 1.0, 1.0 };
GLfloat position[] = { 0.0, 3.0, 2.0, 0.0 };
GLfloat lmodel_ambient[] = { 0.4, 0.4, 0.4, 1.0 };
GLfloat local_view[] = { 0.0 };
glClearColor(0.0, 0.1, 0.1, 0.0);
glEnable(GL_DEPTH_TEST);
glShadeModel(GL_SMOOTH);
glLightfv(GL_LIGHT0, GL_AMBIENT, ambient);
glLightfv(GL_LIGHT0, GL_DIFFUSE, diffuse);
glLightfv(GL_LIGHT0, GL_POSITION, position);
glLightModelfv(GL_LIGHT_MODEL_AMBIENT, lmodel_ambient);
glLightModelfv(GL_LIGHT_MODEL_LOCAL_VIEWER, local_view);
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);
}
// 绘制立方体
void DrawCube(void)
{
int i,j;
glBegin(GL_LINES);
for(i=0; i12; ++i) // 12 条线段
{
for(j=0; j2; ++j) // 每条线段 2个顶点
{
glVertex3fv(vertex_list[index_list[i][j]]);
}
}
glColor3f(1.0f, 1.0f, 1.0f);
glVertex2f(0.0f, 0.0f);
for(i=0; i=8; ++i)
{
glColor3f(i0x04, i0x02, i0x01);
}
glEnd();
}
static float rotate = 0;
static int times =
您可能关注的文档
- 南京大学金陵学院外国语学院2015届毕业论文管理细则及德语管理要求(草稿).docx
- 2014高考数学题库精选核心考点大冲关专题演练31排列与组合、二项式定理(理)讲解.doc
- 单片机控制技术(12-14).doc
- 南京工业大学传递工程第9章 传质概论.ppt
- 南京工程学院2017年硕士专业学位研究生招生简章.doc
- 南京工业大学传递工程第3章 微分方程.ppt
- 2014高考全国新课标Ⅰ卷数学理试题评价与讲解.ppt
- 2014高考新课标高中总复习(第1轮)地理:必修1第2章第3课__地球的公转讲解.ppt
- 南京市、盐城市2016届高三年级第二次模拟考试历史试题.doc
- 2015(冬)计算机网络复习要求讲解.ppt
文档评论(0)