2013《计算机图形学》实验任务.doc

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

2013《计算机图形学》实验任务 试用班级:数媒2011 主讲教师:刘金义 基本说明: ? 最低应完成100分值的题目。 ? 每个题目都应该采用VC++6.0完成。如采用其他环境,需说明。 ? 每个题目的实现结果不是必须与我的要严格一致,可以有你自己的发挥,但不能离基本要求太远。 ? 题目完成后,可随时发送到CompGeom2013@163.com。在邮件标题中,应标注作者、题号和题目名称,例如“陈磊:实验4-HSV颜色空间”。 ? 每个题目只给前3名提交的同学以成绩,以后提交的做无效处理,除非你的程序具有独一无二的特色。 实验0. BITMAP图像文件的显示(20分) 目的:进一步熟悉Windows的GDI编程;认识简单图像格式及其处理方法。 要求:打开任意的BMP文件,显示该图像,并且能够进行颜色取反和二值化。 方法:图像的读入可以采用API函数LoadImage(),也可以根据BitMap格式,逐项读入。 图像的显示可以如下三种方法之一: ? 用SetPixel函数逐个象素显示; ? 用SetDIBitsToDevice函数一次全部显示; ? 用CBitmap类及BitBlt函数显示。 你也可以在OpenGL下完成:利用auxDIBImageLoadA()函数装入图像,利用纹理绘制函数显示。 参考效果:目录下有可执行的演示程序。 实验1. 一个特殊画板(30分) 目的:熟悉基本图元的生成算法,进一步熟悉人机交互程序设计。 要求:该平台需实现的目标: ? 可以绘制的图元包括直线段、圆、和实心多边形; ? 每个图元以当前颜色绘制; ? 只有在底色为白色的位置,图元才被绘出,其他颜色的位置不变,也就是说画出的图形永远不能被删除; ? 要有橡皮筋跟随鼠标移动; ? 实心多边形的交互方法:用鼠标左键确定多边形的前n-1个顶点,用右键确定最后一个顶点,并使多边形封闭。在顶点未确定前,要求总有一个橡皮筋跟着鼠标移动。在最后一个顶点确定后,把多边形填充成实心。 方法:应自己编写绘直线段、圆、和实心多边形绘制函数。在整个实现过程中只需调用一个GDI函数:SetPixel( )。你可以利用提供的多边形填充程序polyfill.c。 评定:如果你的画板不具有“特殊性”,也可获得部分成绩。如果你能将画图结果输出为BMP文件,额外奖励20分。 参考效果:目录下有可执行的演示程序。 实验2. RGB颜色空间(20分) 目的:认识RGB颜色空间,熟悉OpenGL下带颜色几何模型的渲染。 要求:可以放缩和变角度观察。 方法:将RGB正方体的六个正方形表面分割为更小的正方形,每个小正方形用同一颜色。你可以通过修改OpenGL入门程序来实现。 评定:如果你能通过剖切,显示RGB空间的指定剖面,额外奖励20分。 参考效果:目录下有可执行的演示程序。 实验3. HSV颜色空间(30分) 目的:认识HSV颜色空间,熟悉OpenGL下带颜色几何模型的渲染。 要求:可以放缩和变角度观察。 方法:将HSV锥体的侧面和顶面分别分割为小的三角形,每个三角形用颜色过渡的方法渲染。设置颜色时你需利用HSV到RGB的转换。你可以通过修改OpenGL入门程序来实现。 评定:如果你能通过剖切,显示HSV空间的指定剖面,额外奖励20分。 参考效果:目录下有可执行的演示程序。 实验4. STL模型显示(30分) 目的:熟悉几何模型在OpenGL下的渲染。附带学会文件读取。 描述:STL文件是一种用三角形来描述形体表面的文件,其ASCII码文件的例子如下: solid AutoCAD facet normal -9.2007829e-001 -9.0619802e-002 3.8110890e-001 outer loop vertex 3.3409047e+000 1.2000000e+002 1.0000000e+002 vertex 5.5824765e+000 9.7240940e+001 1.0000000e+002 vertex 8.4551301e+000 9.7812346e+001 1.0707107e+002 endloop endfacet facet normal -9.2007829e-001 -9.0619802e-002 3.8110890e-001 outer loop vertex 6.2698369e+000 1.2000000e+002 1.0707107e+002 vertex 3.3409047e+000 1.2000000e+002 1.0000000e+002 verte

文档评论(0)

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

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

1亿VIP精品文档

相关文档