实验1OpenGL中的二维编程.docVIP

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验1OpenGL中的二维编程.doc

实验1 OpenGL中的二维编程 【实验口的】 1 ?掌握基本的openGL编程方法。 2?掌握二维图形的显示方法。 【实验题目】 练习基木的openGL编程方法。 配置openGL,能在VC下通过编译。 阅读并运行simple.c,熟悉最简单的openGL程序结构。 阅读并运行改进的simple2.c,掌握openGL程序的通用结构。给simple2.c 中的函数加注释。 可尝试做如下修改: 改变窗口的位置,尺寸,标题; 改变窗口背景色和矩形颜色; 改变矩形的尺寸和其在窗口屮的位置,还可以只显示矩形的一部分(通过 设置正投影参数(glOrtho函数的参数)和矩形四个顶点的坐标来完成); 发挥想象,编程实现在窗口屮绘制若干图形及设置它们的屈性,并回答问题: 绘制若干个点,分别设置每个点的颜色和大小。 思考题1: glPointSize()可以放在glBeginQ和glEnd()函数对之间吗? 绘制若干条直线段。设置线段的颜色,线型和线宽。 思考题1:以下命令会显示什么样的线段? glEnable(GL_LINE_STIPPLE); glColor3f(0.0, 1.0, 0.0); glLineWidth(2.0); glLineStipple(3, Oxcccc); 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); glEndO ; 将 glShadeModel (GL_SMOOTH)改为 glShadeModel (GL_FLAT),其余命令不变, 结果乂会如何? 绘制若干个多边形。设置多边形的颜色,显示模式,隐藏某些边。 思考题以下命令会显示什么样的多边形? glShadeModel(GL_SM00TH); glBcgin(GL_P0LYG0N); 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); glRnd(); 将 glShadeModel (GL_SM00TII)改为 glShadeModel (GL_FLAT),其余命令不变, 结果又会如何? 将glBegin (GL_P0LYG0N)改为glBegin (GL_QUADS),分别尝试在SMOOTH和FLAT 模式下的结果。 思考题2:以卜?程序段分别会显示什么样的多边形? (a) glPolygonMode( GL_FRONT_AND_BACK, GL_FILL); glColor3f(1.0, 0. 0, 0. 0); glBegin(GL_P0LYG0N); glVcrtcx2f (-0. 5, -0. 5); glVertex2f (-0. 5, 0. 5); glVertex2f (0. 5, 0. 5); glVertex2f (0. 5, -0. 5); glEndO ; (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); glVcrtcx2f (0. 5, 0. 5); glVertex2f (0. 5, -0. 5); glEnd (); (c) g一p2ygonModc( GLIFRONTIANDIBACK GLIPOINTh glcolor3f(LpLp0?0)_ glBegin(GL——POLYGOY)- glVer*tex2f (lo? 5“ lo? 5)八 glVertex2f (lo? 5》0? 5)八 glVertex2f (0. 5“ 0- 5)八 glVertex2f (0. 5“ —0. 5)八 glEndo 八 g_po 一 ygonModAGL—FRONT—ANDIBACK GL—LINEh glcolor3f(LpLp0- 0^ glBegin(GLIPOLYG

您可能关注的文档

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档