实验一 OPENGL中的二维编程.doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验一 OPENGL中的二维编程

实验一 OPENGL中的二维编程 姓名 叶传军 学号 得分 一.实验题目 1练习基本的openGL编程方法。 (1)配置openGL,能在VC下通过编译。 (2)阅读并运行simple.c,熟悉最简单的openGL程序结构。 (3)阅读并运行改进的simple2.c,掌握openGL程序的通用结构。给simple2.c中的函数加注释。 可尝试做如下修改: (a)改变窗口的位置,尺寸,标题; (b)改变窗口背景色和矩形颜色; (c)改变矩形的尺寸和其在窗口中的位置,还可以只显示矩形的一部分(通过设置正投影参数和矩形四个顶点的坐标来完成); 2发挥想象,编程实现在窗口中绘制若干图形及设置它们的属性,并回答问题: (1)绘制若干个点,分别设置每个点的颜色和大小。 思考题1:glPointSize()可以放在glBegin()和glEnd()函数对之间吗? (2)绘制若干条直线段。设置线段的颜色,线型和线宽。 思考题1:以下命令会显示什么样的线段? glEnable(GL_LINE_STIPPLE); glColor3f(0.0, 1.0, 0.0); glLineWidth(2.0); glLineStipple(3, 0xcccc); glDisable(GL_LINE_STIPPLE); 思考题2:以下命令会显示什么样的线段? glShadeModel(GL_SMOOTH); glBegin(GL_LINES); glColor3f(1.0, 0.0, 0.0); glVertex2f(0.0, 0.5); glColor3f(0.0, 0.0, 1.0); glVertex2f(0.5, -0.5); glEnd(); 将glShadeModel(GL_SMOOTH)改为glShadeModel(GL_FLAT),其余命令不变,结果又会如何? (3)绘制若干个多边形。设置多边形的颜色,显示模式,隐藏某些边。 思考题1:以下命令会显示什么样的多边形? glShadeModel(GL_SMOOTH); glBegin(GL_POLYGON); glColor3f(1.0, 0.0, 0.0); glVertex2f(-0.5, -0.5); glColor3f(0.0, 1.0, 0.0); glVertex2f(-0.5, 0.5); glColor3f(0.0, 0.0, 1.0); glVertex2f(0.5, 0.5); glColor3f(1.0, 1.0, 0.0); glVertex2f(0.5, -0.5); glEnd(); 将glShadeModel(GL_SMOOTH)改为glShadeModel(GL_FLAT),其余命令不变,结果又会如何? 将glBegin(GL_POLYGON)改为glBegin(GL_QUADS),分别尝试在SMOOTH和FLAT模式下的结果。 思考题2:以下程序段分别会显示什么样的多边形? (a) glPolygonMode( GL_FRONT_AND_BACK, GL_FILL); glColor3f(1.0, 0.0, 0.0); glBegin(GL_POLYGON); glVertex2f(-0.5, -0.5); glVertex2f(-0.5, 0.5); glVertex2f(0.5, 0.5); glVertex2f(0.5, -0.5); glEnd(); (b) glPolygonMode( GL_FRONT_AND_BACK, GL_LINE); glColor3f(1.0, 1.0, 0.0); glBegin(GL_POLYGON); glVertex2f(-0.5, -0.5); glVertex2f(-0.5, 0.5); glVertex2f(0.5, 0.5); glVertex2f(0.5, -0.5); glEnd(); (c) glPolygonMode( GL_FRONT_AND_BACK, GL_POINT); glColor3f(1.0, 1.0, 0.0); glBegin(GL_POLYGON); glVertex2f(-0.5, -0.5); glVertex2f(-0.5, 0.5); glVertex2f(0.5, 0.5); glVertex2f(0.5, -0.5); glEnd(); 思考题3:下面多边形的哪些边不可见? glPolygonMode( GL_FRONT_AND_BACK, GL_LINE); glColor3f(1.0, 1.

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档