计算机图形学专业课程设计任务计划书Word文档下载推荐.docx
- 文档编号:14519414
- 上传时间:2022-10-23
- 格式:DOCX
- 页数:14
- 大小:215.93KB
计算机图形学专业课程设计任务计划书Word文档下载推荐.docx
《计算机图形学专业课程设计任务计划书Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《计算机图形学专业课程设计任务计划书Word文档下载推荐.docx(14页珍藏版)》请在冰豆网上搜索。
(2)要求有算法参数输入窗口和算法图形化结果显示窗口。
人机交互必需友好。
(3)将象素网格表现出来,建立网格坐标系。
(4)假如采取种子填充算法实现填充,用鼠标选择种子点(也能够经过参数输入窗口
输入种子),用表格形式显示堆栈存放象素,象素出栈或入栈过程要显示出来。
关键是要将象素填充次序表现出来。
2)创新要求:
实现对多边形填充
3)课程设计论文编写要求
(1)课程设计任务及要求
(2)设计思绪--工作原理、功效计划
(3)具体设计---数据分析、算法思绪、功效实现(含程序步骤图、关键代码及注
释)、界面等。
(4)运行调试和分析讨论---给出运行屏幕截图,分析运行结果,有何改善想法等。
(5)设计体会和小结---设计碰到问题及处理措施,经过设计学到了哪些新知识,
巩固了哪些知识,有哪些提升。
(6)参考文件(必需按标准格式列出,可参考教材后面参考文件格式)
(7)汇报按要求排版打印,要求装订平整,不然要求返工;
(8)课设汇报装订次序以下:
封面---任务书---汉字摘要---目录----正文---附录
(代码及相关图片)
(9)严禁剽窃,如有发觉,按不及格处理。
4)课程设计评分标准:
(1)学习态度:
10分;
(2)系统设计:
20分;
(3)编程调试:
(4)回复问题:
(5)论文撰写:
30分。
5)参考文件:
(1)陆枫何云峰.计算机图形学基础(第2版)[M].电子工业出版社
(2)张曦煌杜俊俐.计算机图形学[M].北京邮电大学出版社
(3)孙家广.计算机图形学[M].清华大学出版社.
6)课程设计进度安排
1.准备阶段(4课时):
选择设计题目、了解设计目标要求、查阅相关资料
2.程序模块设计分析阶段(4课时):
程序总体设计、具体设计
3.代码编写调试阶段(8课时):
程序模块代码编写、调试、测试
4.撰写论文阶段(4课时):
总结课程设计任务和设计内容,撰写课程设计论文
学生署名:
年6月8日
课程设计(论文)评审意见
(1)学习态度(10分):
优( )、良( )、中( )、通常( )、差( );
(2)系统设计(20分):
优()、良( )、中( )、通常( )、差( );
(3)编程调试(20分):
(4)回复问题(20分):
(5)论文撰写(30分):
评阅人:
职称:
讲师
年6月日
汉字摘要
[摘要]:
图形通常由点、线、面、体等几何元素和灰度、色彩、线型、线宽等非几何属性组成。
从处理技术上来看,图形关键分为两类,一类是基于线条信息表示,如工程图、等高线地图、曲面线框图等,另一类是明暗图,也就是通常所说真实感图形。
计算机图形学一个关键目标就是要利用计算机产生令人赏心悦目标真实感图形。
为此,必需建立图形所描述场景几何表示,再用某种光照模型,计算在假想光源、纹理、材质属性下光照明效果。
[关键词]:
计算机图形学、区域填充、扫描线算法
目 录
一、课程设计任务及要求
1)能实现区域填充光栅化算法原理性演示。
2)要求有算法参数输入窗口和算法图形化结果显示窗口。
3)将象素网络表现出来,建立网格坐标系。
4)假如采取种子填充算法实现填充,用鼠标选择种子点(也能够经过参数输入窗口输入点),用表格形式显示堆栈存放象素,象素出栈或入栈过程要显示出来。
二、需求分析
在计算机中重现真实世界场景叫做真实感绘制。
真实感绘制关键任务是模拟真实物体物理属性,简单说就是物体形状、光学性质、表面纹理和粗糙程度,和物体间相对位置、遮挡关系等等。
实时真实感绘制已经成为目前真实感绘制研究热点,而目前真实感图形实时绘制两个热点问题则是物体网格模型面片简化和基于图象绘制(IBRImageBasedRendering)。
网格模型面片简化,就是指对网格面片表示模型,在一定误差精度范围内,删除点、边、面,从而简化所绘制场景复杂层度,加紧图形绘制速度。
IBR完全摒弃传统先建模,然后确定光源绘制方法。
它直接从一系列已知图象中生成未知视角图象。
这种方法省去了建立场景几何模型和光照模型过程,也不用进行如光线跟踪等极费时计算。
该方法尤其适适用于野外极其复杂场景生成和漫游。
关键任务是实现多边形区域扫描线填充有序边表算法,设计相关数据结构(如链表结构、结点结构等),并将实现算法应用于任意多边形填充,区域填充,指是在输出平面闭合区域内完整地填充某种颜色或图案。
以下所述及区域填充算法或相关程序,关键针对显示平面内区域而言。
区域填充问题通常分两大类,一是多边形填充;
一是种子填充;
种子填充在学生掌握了“栈”这一抽象数据类型实现方法前提下,比较轻易完成。
而边标志填充算法却是介于这两类之间,部分地含有它们痕迹,算法思想巧妙,实现起来更轻易。
多边形填充有一定难度,我们关键对多边形扫描线算法填充做部分探讨,具体将以五角星为实例。
扫描线填充算法通常包含四个步骤:
求交、排序、交点配对、区域填充。
正确求得扫描线和区域填内外轮廓线交点是算法成败关键问题。
其次,采取适宜数据结构又能够简化操作、提升算法效率。
本论文因为采取链表结构统计轮廓线和交点,无需焦点排序过程,所以提升了算法效率。
扫描线起源于光栅显示器显示原理:
对于屏幕上全部待显示像素信息,将这些信息按从上到下、自左至右方法显示。
扫描线多边形区域填充算法是按扫描线次序,计算扫描线和多边形相交区间,再用要求颜色显示这些区间象素,即完成填充工作。
区间端点能够经过计算扫描线和多边形边界线交点取得。
对于一条扫描线,多边形填充过程能够分为四个步骤:
(1)求交:
计算扫描线和多边形各边交点;
(2)排序:
把全部交点按x值递增次序排序;
(3)配对:
第一个和第二个,第三个和第四个等等;
每对交点代表扫描线和多边形一个相交区间;
(4)填色:
把相交区间内象素置成多边形颜色;
三、总体设计
1)分析多边形区域扫描线填充算法原理,确定算法步骤
1初始化:
结构边表ET,置AET表为空;
2将第一个不空ET表中边插入AET表;
3由AET表取出交点进行配对(奇偶)取得填充区间,依次对这些填充区间着色;
4y=yi+1时,依据x=xi+1/k修改AET表全部结点中交点x坐标。
同时假如对应ET表不空,则将其中结点插入AET表,形成新AET表;
5AET表不空,则转(3),不然结束。
2)编程实现
1首先确定多边形顶点和ET/AET表中结点结构
2编写链表相关操作(如链表结点插入、删除和排序等)
3依据1)中算法结合上述已经有链表操作函数实现多边形区域扫描线填充主体功效
4编写主函数,测试该算法
3)算法描述:
voidpolyfill(多边形polygon,颜色color)
{for(各条扫描线i)
{初始化新边表头指针NET[i];
把ymin=i边放进边表NET[i];
}
y=最低扫描线号;
初始化活性边表AET为空;
for(各条扫描线i)
{把新边表NET[i]中边结点用插入排序法插入AET表,使之按x坐标递增次序排列;
遍历AET表,把ymax=i结点从AET表中删除,并把ymax>
i结点x值递增Dx;
若允很多边形边自相交,则用冒泡排序法对AET表重新排序;
遍历AET表,把配对交点区间(左闭右开)上象素(x,y),用drawpixel(x,y,color)改写象素颜色值;
}/*polyfill*/
四、具体设计
1.用扫描线算法实现五角星填充
以(50,0),(60,30),(90,30),(70,45),(80,90),(50,60),(20,90),(30,45),(10,30),(40,30)这十个点作为五角星十个点,利用扫描线算法将这个五角星进行填充。
依据扫描线算法步骤,可将其算法过程描述以下:
3.1.1画五角星图形
(1)五角星图形
Y
90 p8 p6
80
e7 e6
70
p7 y=60
60 e8 e5
50 y=45
p9 p5
40 e9 e4
y=30
30 p0 e0 p1 p3 e3 p4
20
e1e2e2 y=10
10
0 10 20 30 40 50 p2 60 70 80 90 x
图3.1五角星图形
(2)五角星边表
结构ET表算法描述以下:
voidCreatET(Edge*et[],structpointtypep[])/*依据顶点数组结构ET表*/
{
inti,lasty,lastx,nextx,nexty,ymax,cy,cx;
Edge*pe;
for(i=0;
i<
EDGEMAX;
i++){
cy=p[i].y;
cx=p[i].x;
/*确定上一点坐标及下一点坐标,考虑数组首尾点。
。
*/
if(0==i){
lasty=p[EDGEMAX-1].y;
lastx=p[EDGEMAX-1].x;
else{
lasty=p[i-1].y;
lastx=p[i-1].x;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 图形学 专业课程 设计 任务 计划书