- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机图形学教材第二章光栅图形学(希赛教育基础学院)计算机图形学教材第二章光栅图形学(希赛教育基础学院)
★ 第二章 光栅图形学
【课前思考】
计算机是如何在屏幕上画一条直线或一个圆的?
在计算机屏幕上画直线时,经常出现锯齿,这是为什么?如何解决?
【学习目标】
了解光栅图形学的特点;
掌握直线、圆弧和椭圆的光栅显示方法;
学习反走样的几种算法,并能够编程实现。
【学习指南】
在数控插补技术中也有关于直线、圆弧和椭圆的NC插补的更多算法,可以参考有关的数控编程的书或资料;
某些图象处理方法对学习和掌握反走样技术会有帮助。
【难重点】
Bresenham画直线和画圆算法;
直线的反走样。
【知识点】
Bresenham画直线算法;
Bresenham画圆算法;
多边形区域填充;
直线反走样;
离散区域反走样算法。
◇第一节 画线算法
光栅图形显示器可以看成是由许多可发光的离散点(即像素)组成的矩阵,它需要专门的算法来生成直线、圆弧和曲线等等图形。本章将介绍生成光栅图形的相关算法。这些算法对于开发图形设备驱动程序是必需的。不过,在Windows、Unix或Linux操作系统上开发计算机图形时,现在都有支持OpenGL的图形硬件和软件开发工具可供使用,而OpenGL程序库本身都提供了光栅图形显示的驱动程序,这为图形软件开发人员提供了便利。2.1画线算法 。一旦di+1≥1,就把它减去1,这样保证di+1在0~1之间。当d i+1≥0.5时,直线 与x=xi+1的垂线的交点最接近于当前像素(xi,yi)的右上方像素(xi+1,yi+1);而当d i+10.5时,其交点更接近于(xi,yi)右边的像素(xi+1,yi)。为方便计算,令e0=-0.5,e i+1=di+1-0.5,增量为k。当ei+1≥0时,取当前像素(xi,yi)的右上方像素(xi+1, yi+1);而当e i+10时,更接近于右方像素(xi+1,yi)。
直线的基本要求因此,算法2.1可以改进如:图2.1 Bresenham画线算法
。 考虑到xy平面上各种八分和四分区域的对称性,Bresenham画线算法的原理对任意斜率的直线都有其通用性。例如,对于斜率k1的直线,只要在上述算法中交换x和y之间的规则即可。
算法2.1 画斜率0≤k≤1的直线的改进的Bresenham画线算法:void BresenhamLine (int x0, int y0, int x1, int y1, long color) { int x, y, dx, dy; float k, e; dx = x1-x0; dy = y1- y0; e=-dx; x = x0; y = y0; if (dx = = 0) { for (i=0;i≤dy;i++) { DrawPixel (x, y+i, color);//画像素(x,y+i) } return; } for (i=0;i≤dx;i++) { DrawPixel (x, y, color);//画像素(x,y) x++; e += e+2*dy; if (e≥0) { y++; e -= 2*dx; } } }
2.2??? 画圆 Bresenham算法。 不失一般性,假设圆的圆心位于坐标原点(如果圆心不在原点,可以通过坐标平移使其与原点重合),半径为R。以原点为圆心的圆C有四条对称轴:x=0,y=0,x=y和x=-y。若已知圆弧上一点P1=C(x, y),利用其对称性便可以得到关于四条对称轴的其它7个点,即: P2C(x,-y),
P3C(-x, y),
P4C(-x,-y),
P5C(y,x),
P6C(-y,x),
P7C(y,-x),
P8C(-y,-x)。
这种性质称为八对称性。因此,只要扫描转换八分之一圆弧,就可以通过圆弧的八对称性得到整个圆。 为了方便起见,考虑位于第一象限的四分之一圆弧。如果以点(0,R)为起点按顺时针方向生成圆,则在第一象限内y是x的单调递减函数。假设圆心和起点均精确地落在像素中心上。 如果已经知道圆弧上的一点(x,y),下一像素的选取有三种可能:正右方像素,右下角像素和正下方像素,分别用H,D和V表示,如图2.2所示。这三个像素的偏差的平方为:
令 。
如果 ,说明圆弧到D向像素的距离大于到H向像素的距离,因此,下一个像素应当取H向的像素(xi+1,yi);反之,下一个像素应当取D向的像素(xi+1,yi-1)。经过更进一步地分析后,可以得到: 如 公式(2-2-1)
我们可以按以下规则选取下一个
您可能关注的文档
- 西医学中医的感想体会西医学中医的感想体会.doc
- 西医综合·呼吸系统疾病(生理+病理+内科+外科)西医综合·呼吸系统疾病(生理+病理+内科+外科).pdf
- 西医综合考研复习练习题 一西医综合考研复习练习题 一.doc
- 西华大学 模拟电子技术 模拟题西华大学 模拟电子技术 模拟题.doc
- 西华师范大学2012年现代教育技术复习资料西华师范大学2012年现代教育技术复习资料.pdf
- 西华师范大学 数学 《类比推理》教学设计西华师范大学 数学 《类比推理》教学设计.pdf
- 西华师范大学历史文化学院西华师范大学历史文化学院.doc
- 西南交通大学新生入学指南(给力版)西南交通大学新生入学指南(给力版).doc
- 西南交大材料力学弯曲位移一西南交大材料力学弯曲位移一.ppt
- 西南交通大学本科毕业设计(论文)撰写规范 - 四川科技职业学院西南交通大学本科毕业设计(论文)撰写规范 - 四川科技职业学院.pdf
- 计算机图形学教案第1章引言计算机图形学教案第1章引言.ppt
- 计算机图形学基础(第2版)课后习题答案__陆枫计算机图形学基础(第2版)课后习题答案__陆枫.pdf
- 计算机图形学第四章图形标准计算机图形学第四章图形标准.ppt
- 计算机基础一级选择题题库计算机基础一级选择题题库.pdf
- 计算机基础单项.多项.判断计算机基础单项.多项.判断.doc
- 计算机基础模拟试题1计算机基础模拟试题1.doc
- 计算机基础概论计算机基础概论.doc
- 计算机基础考试大纲计算机基础考试大纲.ppt
- 计算机基础第6次作业计算机基础第6次作业.doc
- 计算机基础的学习制作WORD 文档计算机基础的学习制作WORD 文档.doc
文档评论(0)