计算机图形学课程设计--计算机图形学基本算法演示系统设计

计算机图形学课程设计--计算机图形学基本算法演示系统设计

ID:35618484

大小:147.00 KB

页数:17页

时间:2019-04-02

计算机图形学课程设计--计算机图形学基本算法演示系统设计_第1页
计算机图形学课程设计--计算机图形学基本算法演示系统设计_第2页
计算机图形学课程设计--计算机图形学基本算法演示系统设计_第3页
计算机图形学课程设计--计算机图形学基本算法演示系统设计_第4页
计算机图形学课程设计--计算机图形学基本算法演示系统设计_第5页
资源描述:

《计算机图形学课程设计--计算机图形学基本算法演示系统设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、河南理工大学计算机科学与技术学院课程设计报告2009—2010学年第二学期课程名称计算机图形学设计题目计算机图形学基本算法演示系统设计学生姓名郭俊萍学号320909010202专业班级计本09-2指导教师徐文鹏2010年6月29日15目录目录目录I第1章设计内容与要求11.1总体目标和要求11.2内容与要求1第2章总体设计32.1Bresenham算法画直线32.2用Bresenham算法画圆32.3用梁友栋-Barsky算法进行线段裁剪4第3章详细设计53.1Bresenham算法画直线53.2Bresenham算法画圆53.3用梁友栋-Barsky算法进行线段裁剪6第4章功能实现7

2、4.1Bresenham算法画直线74.2用Bresenham算法画圆94.3梁友栋-Barsky裁剪算法10第5章总结14参考文献1515第1章基础知识第1章设计内容与要求1.1总体目标和要求目标:以图形学算法为目标,深入研究。继而策划、设计并实现一个能够表现计算机图形学算法原理的或完整过程的演示系统,并能从某些方面作出评价和改进意见。通过完成一个完整程序,经历策划、设计、开发、测试、总结和验收各阶段,达到:1)巩固和实践计算机图形学课程中的理论和算法;2)学习表现计算机图形学算法的技巧;3)培养认真学习、积极探索的精神。总体要求:策划、设计并实现一个能够充分表现图形学算法的演示系统

3、,界面要求美观大方,能清楚地演示算法执行的每一个步骤。开发环境:ViusalC++6.0,VC2005或其他你认为比较熟悉的环境。1.2内容与要求实验分为五项内容。1.直线的生成内容:用Bresenham算法画直线要求:1)将像素网格表现出来,建立网格坐标系2)用橡皮筋的形式输入参数3)鼠标移动时,显示鼠标当前位置4)显示判别式的计算过程和下一点的选择策略5)记录生成点的坐标,建议用表的形式6)图形生成过程可以重复进行2.圆弧的生成内容:用Bresenham算法画圆要求:1)将像素网格表现出来,建立网格坐标系2)用橡皮筋的形式输入参数3)鼠标移动时,显示鼠标当前位置4)显示判别式的计算

4、过程和下一点的选择策略5)记录生成点的坐标,建议用表的形式6)图形生成过程可以重复进行15第1章基础知识1.线段裁剪内容:用梁友栋-Barsky算法进行线段裁剪要求:1)将像素网格表现出来,建立网格坐标系2)用橡皮筋的形式输入剪裁线段3)对于线段裁剪,线段被窗口的四条边裁剪的过程要显示出来15第2章总体设计第2章总体设计2.1Bresenham算法画直线2.1.1直线Bresenham算法描述Bresenham直线算法是用来描绘由两点所决定的直线的算法,它会算出一条线段在n维光栅上最接近的点。这个算法只会用到较为快速的整数加法、减法和位元移位,常用于绘制电脑画面中的直线。是计算机图形学

5、中最先发展出来的算法。2.1.2直线Bresenham算法基本原理过各行各列像素中心构造一组虚拟网格线,按直线从起点到终点的顺序计算直线与各垂直网格线的交点,然后确定该列像素中与此交点最近的像素。2.2用Bresenham算法画圆2.2.1圆Bresenham算法描述假设圆的圆心位于坐标原点(如果圆心不在原点,可以通过坐标平移使其与原点重合),半径为R。以原点为圆心的圆C有四条对称轴:x=0,y=0,x=y和x=-y。若已知圆弧上一点P1=C(x,y),利用其对称性便可以得到关于四条对称轴的其它7个点,即:P2=C(x,-y),P3=C(-x,y),P4=C(-x,-y),

6、P5=C(y,x),P6=C(-y,x),P7=C(y,-x),P8=C(-y,-x)。这种性质称为八对称性。因此,只要扫描转换八分之一圆弧,就可以通过圆弧的八对称性得到整个圆。2.2.2圆Bresenham算法基本原理15第2章总体设计计算误差值Pi,以圆心为平面坐标轴原点,以Y轴正半轴向第一象限变化作基准x与y的变化关系,每点的偏移量以误差值Pi为计算基量,Pi<0则yi+1=yi,否则yi+1=yi+1,算出y的变化量(从Y正半轴开始到1/8弧x变化快于y变化,所以x变化量为1)。Pi的递归式,当Pi小于0,Pi+1=Pi+4xi+6,否则Pi=Pi+1+4(xi

7、+yi)+10。每画一点后根据中心对称原理在4个坐标轴同时向8个方向画点。直至到1/8弧相交(此时X等于Y)。2.3用梁友栋-Barsky算法进行线段裁剪2.3.1梁友栋-Barsky算法特点梁友栋-Barsky算法只能应用于矩形窗口的情形。通常梁友栋-Barsky算法比Cohen-Sutherland算法效率更高,因为需要计算的交点数目减少了。更新参数u1、u2仅仅需要一次除法;线段与窗口边界的交点仅计算一次,就计算出u1、u2最后的值。相比

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。