计算机图形学课程设计任务书2015
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计(论文)任务书
软件学院学院专业班
一、课程设计(论文)题目区域填充算法演示系统
二、课程设计(论文)工作自 2015 年 6 月8 日起至2015 年6 月 12 日止。
三、课程设计(论文) 地点: 软件学院实训中心
四、课程设计(论文)内容要求:
1.本课程设计的目的
计算机图形学课程设计是计算机图形学课程中的知识、技术和技能的一个综合应用,是培养图形软件开发能力的综合训练。通过课程设计,使学生更深入地理解和掌握计算机图形学理论与相关算法,巩固课内所学的知识、技术和技能,进一步提高图形软件开发的能力。为毕业设计和毕业后从事计算机绘图、计算机辅助设计、辅助教学、辅助工程、图形处理等打下基础。
2.课程设计的任务及要求
1)课程设计任务:
(1)能实现区域填充光栅化算法的原理性演示。(算法过程的可视化及动画演示)(2)要求有算法参数输入窗口和算法的图形化结果显示窗口。人机交互必须友好。(3)将象素网格表现出来,建立网格坐标系。
(4)如果采用种子填充算法实现填充,用鼠标选择种子点(也可以通过参数输入窗口输入种子),用表格的形式显示堆栈存储的象素,象素出栈或入栈的过程要显示出来。关键是要将象素填充的顺序表现出来。
2)创新要求:
实现对多边形的填充
3)课程设计论文编写要求
(1)课程设计任务及要求
(2)设计思路--工作原理、功能规划
(3)详细设计---数据分析、算法思路、功能实现(含程序流程图、主要代码及注释)、界面等。
(4)运行调试与分析讨论---给出运行屏幕截图,分析运行结果,有何改进想法等。(5)设计体会与小结---设计遇到的问题及解决办法,通过设计学到了哪些新知识,巩固了哪些知识,有哪些提高。
计算机图形学课程设计
(6)参考文献(必须按标准格式列出,可参考教材后面的参考文献格式)
(7)报告按规定排版打印,要求装订平整,否则要求返工;
(8)课设报告的装订顺序如下:封面---任务书---中文摘要---目录----正文---附录(代码及相关图片)
(9)严禁抄袭,如有发现,按不及格处理。
4)课程设计评分标准:
(1)学习态度:10分;
(2)系统设计:20分;
(3)编程调试:20分;
(4)回答问题:20分;
(5)论文撰写:30分。
5)参考文献:
(1)陆枫何云峰. 计算机图形学基础(第2版)[M]. 电子工业出版社
(2)张曦煌杜俊俐. 计算机图形学[M]. 北京邮电大学出版社
(3)孙家广. 计算机图形学[M]. 清华大学出版社.
6)课程设计进度安排
1.准备阶段(4学时):选择设计题目、了解设计目的要求、查阅相关资料
2.程序模块设计分析阶段(4学时):程序总体设计、详细设计
3.代码编写调试阶段(8学时):程序模块代码编写、调试、测试
4.撰写论文阶段(4学时):总结课程设计任务和设计内容,撰写课程设计论文
学生签名:
2015 年 6 月8 日
课程设计(论文)评审意见
(1)学习态度(10分):优()、良()、中()、一般()、差();(2)系统设计(20分):优()、良()、中()、一般()、差();(3)编程调试(20分):优()、良()、中()、一般()、差();(4)回答问题(20分):优()、良()、中()、一般()、差();(5)论文撰写(30分):优()、良()、中()、一般()、差();
评阅人:职称:讲师
2015 年 6 月日
廖驷:区域填充算法演示系统
中文摘要
[摘要]:图形通常由点、线、面、体等几何元素和灰度、色彩、线型、线宽等非几何属性组成。从处理技术上来看,图形主要分为两类,一类是基于线条信息表示的,如工程图、等高线地图、曲面的线框图等,另一类是明暗图,也就是通常所说的真实感图形。计算机图形学一个主要的目的就是要利用计算机产生令人赏心悦目的真实感图形。为此,必须建立图形所描述的场景的几何表示,再用某种光照模型,计算在假想的光源、纹理、材质属性下的光照明效果。
[关键词] :计算机图形学、区域填充、扫描线算法
3
计算机图形学课程设计
目录
一、课程设计任务及要求 (1)
二、需求分析 (2)
三、设计思路 (4)
四、详细设计 (6)
五、运行调试与分析讨论 (15)
六、设计体会与小结 (17)
七、参考文献 (18)
廖驷:区域填充算法演示系统
一、课程设计任务及要求
1)能实现区域填充光栅化算法的原理性演示。(算法过程的可视化及动画演示)
2)要求有算法参数输入窗口和算法的图形化结果显示窗口。人机交互必须友好。
3)将象素网络表现出来,建立网格坐标系。
4)如果采用种子填充算法实现填充,用鼠标选择种子点(也可以通过参数输入窗口输入点),用表格的形式显示堆栈存储的象素,象素出栈或入栈的过程要显示出来。关键是要将象素填充的顺序表现出来。
计算机图形学课程设计
二、需求分析
在计算机中重现真实世界的场景叫做真实感绘制。真实感绘制的主要任务是模拟真实物体的物理属性,简单的说就是物体的形状、光学性质、表面的纹理和粗糙程度,以及物体间的相对位置、遮挡关系等等。实时的真实感绘制已经成为当前真实感绘制的研究热点,而当前真实感图形实时绘制的两个热点问题则是物体网格模型的面片简化和基于图象的绘制(IBR Image Based Rendering)。网格模型的面片简化,就是指对网格面片表示的模型,在一定误差的精度范围内,删除点、边、面,从而简化所绘制场景的复杂层度,加快图形绘制速度。IBR完全摒弃传统的先建模,然后确定光源的绘制的方法。它直接从一系列已知的图象中生成未知视角的图象。这种方法省去了建立场景的几何模型和光照模型的过程,也不用进行如光线跟踪等极费时的计算。该方法尤其适用于野外极其复杂场景的生成和漫游。
主要任务是实现多边形区域扫描线填充的有序边表算法,设计相关的数据结构(如链表结构、结点结构等),并将实现的算法应用于任意多边形的填充,区域填充,指的是在输出平面的闭合区域内完整地填充某种颜色或图案。以下所述及的区域填充算法或相关程序,主要针对显示平面内的区域而言。
区域填充的问题一般分两大类,一是多边形填充;一是种子填充;种子填充在学生掌握了“栈”这一抽象数据类型的实现方法的前提下,比较容易完成。而边标志填充算法却是介于这两类之间,部分地具有它们的痕迹,算法思想巧妙,实现起来更容易。多边形填充有一定难度,我们主要对多边形的扫描线算法填充做一些探讨,具体将以五角星为实例。
扫描线填充算法一般包括四个步骤:求交、排序、交点配对、区域填充。正确求得扫描线与区域填内外轮廓线的交点是算法成败的关键问题。另一方面,采用合适的数据结构又可以简化操作、提高算法的效率。本论文由于采用链表结构记录轮廓线和交点,无需焦点排序的过程,因而提高了算法效率。扫描线来源于光栅显示器的显示原理:对于屏幕上所有待显示像素的信息,将这些信息按从上到下、自左至右的方式显示。
扫描线多边形区域填充算法是按扫描线顺序,计算扫描线与多边形的相交区间,再用要求的颜色显示这些区间的象素,即完成填充工作。区间的端点可以通过计算扫描线与多边形边界线的交点获得。对于一条扫描线,多边形的填充过程可以分为四个步骤: