计算机图形学教学资料第5讲.ppt

上传人:王** 文档编号:479994 上传时间:2023-09-14 格式:PPT 页数:54 大小:1.24MB
下载 相关 举报
计算机图形学教学资料第5讲.ppt_第1页
第1页 / 共54页
计算机图形学教学资料第5讲.ppt_第2页
第2页 / 共54页
计算机图形学教学资料第5讲.ppt_第3页
第3页 / 共54页
计算机图形学教学资料第5讲.ppt_第4页
第4页 / 共54页
计算机图形学教学资料第5讲.ppt_第5页
第5页 / 共54页
计算机图形学教学资料第5讲.ppt_第6页
第6页 / 共54页
计算机图形学教学资料第5讲.ppt_第7页
第7页 / 共54页
计算机图形学教学资料第5讲.ppt_第8页
第8页 / 共54页
计算机图形学教学资料第5讲.ppt_第9页
第9页 / 共54页
计算机图形学教学资料第5讲.ppt_第10页
第10页 / 共54页
亲,该文档总共54页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《计算机图形学教学资料第5讲.ppt》由会员分享,可在线阅读,更多相关《计算机图形学教学资料第5讲.ppt(54页珍藏版)》请在优知文库上搜索。

1、Interactive Computer Graphics-交互式计算机图形学9/14/20231本章内容v直线的扫描转换v圆与椭圆的扫描转换v区域填充v二维裁剪v字符生成v反走样Interactive Computer Graphics-交互式计算机图形学9/14/20232三种绘制直线的算法v数值微分法v原理简单,实现方便,但在效率上低于后者。v用到了浮点数运算,不方便硬件实现。v中点画线法vBresenham画线法 后两种算法都是较为常见的画线算法。对于直线段来说,两种方法是等同的和最有效的。kyyxxiiii111:递推计算0201221;211110iiiiiiiiiiidyyadd

2、yybaddxxbad当当递推公式:di-eiInteractive Computer Graphics-交互式计算机图形学9/14/20233第二节 圆与椭圆的扫描转换v圆的扫描转换v中点画圆算法vBresenham画圆算法v内接正多边形迫近法v椭圆的扫描转换v中点画法v若干相关问题Interactive Computer Graphics-交互式计算机图形学9/14/20234圆的表示Ryyxx2020)()(原始定义:等价定义 v v v ),(00222偏移yxRyx22xRy2,0sincosRyRxInteractive Computer Graphics-交互式计算机图形学9/1

3、4/20235代数离散法,.,1,022RxxRy2,.,0sincosRyRx效率低Interactive Computer Graphics-交互式计算机图形学9/14/20236圆的属性分析对称性(y,x)(y,-x)(x,-y)(-x,-y)(-y,-x)(-y,x)(-x,y)(x,y)正负划分性0),(:222Ryxyxf定义圆的方程.),(,0),(;),(,0),(:在圆的内侧点时在圆的外侧点时则yxyxfyxyxfInteractive Computer Graphics-交互式计算机图形学9/14/20237圆的扫描转换的数学模型v找到逼近如下圆弧线的像素点集合:0 xy2

4、22Ryx01k切线斜率范围:取x为自变量Interactive Computer Graphics-交互式计算机图形学9/14/20238中点画圆算法的原理)21,1()(kkkyxfMfd判别量定义:下一象素的3位置选项当前象素的2位置选项P=(xk,yk)MSEMEMSEE前一个象素位置),1(,0);1,1(,0kkkkkkyxdyxd选择当选择当?:提高dk计算效率?增量运算Interactive Computer Graphics-交互式计算机图形学9/14/20239续:rrrrfd25.1)5.0(1)5.0,1(220)5.0,1(111kkkyxfd0)5.1,2(0)5.

5、0,2(kkkkkkdyxfdyxf0)5.1()2(0)5.0()2(222222kkkkkkdryxdryx022)5.0(32)1(0)5.0(32)1(222222kkkkkkkkkdryyxxdryxx05)(2032kkkkkkkdyxddxd浮点数浮点数!Interactive Computer Graphics-交互式计算机图形学9/14/202310续:rp10设:25.0kkdp具有等价布尔值。以及与显然025.00kkkppd可替代的高效算法:kkdp4则判别量的初值为:Interactive Computer Graphics-交互式计算机图形学9/14/202311o

6、pypyyxxpyxppxpprpkkkkkkkkkkkkkkk10105)(203211110则:结论 Interactive Computer Graphics-交互式计算机图形学9/14/202312二阶差分方法任意多项式均可使用该方法实现增量计算22)32(3)1(23211111kkkkkdxxxd04025)(21211212kkkkkkkddddyxd类似地:310drd2520可使用增量运算5)(23221kkkkkyxdxdInteractive Computer Graphics-交互式计算机图形学9/14/202313中点画圆算法伪代码Void MidPointCircl

7、e(int r,int color)int x,y,d;x=0;y=r;d=1-r;delta1=3;delta2=5-2r;drawpiexl(x,y,color);while(yx)if(d2条件:下一点满足)21()1(22pxpyyrxrES区域 1区域 2切线斜率=-1梯度矢量区域2内?Interactive Computer Graphics-交互式计算机图形学9/14/202336椭圆弧上部的扫描转换(1)n椭圆弧上部对应的决策参数:)21,1(41iiiyxfd之间选择。或者应在,则下一点若当前绘制的点为)1,1(),1(),(),(11iiiiiiiiyxyxyxyxv根据决

8、策参数的取值,成立:01)1,1(01),1(),(11iiiiiiiidyxdyxyx当当Interactive Computer Graphics-交互式计算机图形学9/14/202337椭圆弧上部的扫描转换(2)n决策参数的递推计算初始条件:),0(),(00yryx2220441xyxyrrrrd化简得到:)5.0,1(410yrfd则:)5.0(422222yxyxyrrrrrInteractive Computer Graphics-交互式计算机图形学9/14/202338椭圆弧上部的扫描转换(3)iiiddd1111可表示为:判别量的递推计算公式)5.0,2(4)5.0,1(41

9、111iiiiiyxfyxfd)5.0()2(412222221yxixiyirryrxrd展开:)5.0()1(2)1(422222222yxixyiyiyrryrrxrxr224)1(8)5.0,1(4yiyiirxryxf)32(412iyixrd)32(412iyixrd时:当01 idInteractive Computer Graphics-交互式计算机图形学9/14/202339椭圆弧上部的扫描转换(4))1(8)32(4122ixiyiyrxrd式时对应的判别量递推公类似可得01 id)5.1,2(4)5.0,1(41111iiiiiyxfyxfd)5.1()2(4122222

10、21yxixiyirryrxrd展开:2224)1(8)1(8)5.0,1(4yixiyiiryrxryxf)1(8)32(4122ixiyiyrxrd时:当01 idInteractive Computer Graphics-交互式计算机图形学9/14/202340椭圆弧上部的扫描转换(5)01)1(8)32(4101)32(4112221iixiyiiiyiidyrxrddxrdd2220441xyxyrrrrd判别量初值:),0(),(00yryx点:第一象限椭圆弧的起始01)1,1(01),1(),(11iiiiiiiidyxdyxyx当当0)()()(),(222yxxyrryrxr

11、yxf椭圆方程:递推计算过程:Interactive Computer Graphics-交互式计算机图形学9/14/202341椭圆弧下部的扫描转换(1)v同理对椭圆弧的下部进行扫描转换。)1,5.0(42iiiyxfd判别参数为:)1,1(),(02)1,(),(02)0,(),(111100iiiiiiiiiixyxyxdyxyxdryx时当时当开始:绘制从初始点Interactive Computer Graphics-交互式计算机图形学9/14/202342椭圆弧下部的扫描转换(2))0,(xr初始点为:222044)1,5.0(42yyxxxrrrrrfd判别参数的初始值为:02)

12、1(8)32(4202)32(4222221iiyixiiixiidxryrddyrdd:判别参数的递推公式为判别参数的递推计算:Interactive Computer Graphics-交互式计算机图形学9/14/202343椭圆弧的扫描转换1.从(0,ry)开始,绘制椭圆弧的上部,采用判别参数为d1i;2.当绘制当前点满足切线斜率大于-1时,椭圆弧上部绘制完成;3.从(rx,0)开始,绘制椭圆弧的下部,采用判别参数为d2i;4.当绘制当前点的坐标与椭圆弧上部的最后一点交叉时,椭圆弧下部绘制完成;5.根据椭圆的对称性完成整个椭圆的绘制.Interactive Computer Graphi

13、cs-交互式计算机图形学9/14/202344若干相关问题(1)v曲线的扫描转换:v一般方法:直线段逼近 注意象素点的等距。为此可使用曲线的参数表示,或按照曲线斜率选择自变量,而从显式表示中生成等距位置点。正区域 负区域 n正负法:尤其适合易画曲线:具有正负划分性、平坦性、连续性初始定向:起始点切线方向;前进规则:正负划分性确定;Interactive Computer Graphics-交互式计算机图形学9/14/202345若干相关问题(2)v直线绘制算法的并行实现:v任何线生成算法都可以通过线段分割而适用于并行实现。v有足够多的处理器时,按照屏幕的不同区域分配处理器。Interactiv

14、e Computer Graphics-交互式计算机图形学9/14/202346若干相关问题(3)v图元几何尺寸的保留:v在扫描转换过程中注意象素集合的实际尺寸,如线段的始末点坐标的定义。v不同图元的尺寸变化不同。Interactive Computer Graphics-交互式计算机图形学9/14/202347若干相关问题(4)线宽控制v标准线宽的直线被扫描转换为一个象素宽的直线段。v其它线宽的实现可以采用笔或刷的方式。通过沿相邻平行线路径画额外的象素可以定义标准线宽的正整数倍的其它线宽。v线刷子方法实现的线宽控制:分水平和垂直两种。垂直线刷子:一般地,对于任意线段,当某点切矢斜率在-1,1

15、之间时,扫描转换过程是:给定x以固定步长,确定y方向的增量,所以可用垂直线刷子扫过象素,即得到所要求的线段。水平线刷子:对于其切矢斜率在-1,1之外的线段,可用水平线刷子扫过即可。Interactive Computer Graphics-交互式计算机图形学9/14/202348 线刷子的设计简单高效。但它存在如图所示的缺陷。线刷子方案的缺陷Interactive Computer Graphics-交互式计算机图形学9/14/202349v采用矩形刷子可以避免第一个缺陷 需设计新的数据结构以避免象素的重复绘制。v采用画轮廓线再填充的方法可以避免上述三种缺陷。解决方案Interactive C

16、omputer Graphics-交互式计算机图形学9/14/202350线型控制v线型属性:实线、虚线和点划线等。v线型的实现方式:通过设置沿线路径显示的实线段的长度和间距来修改画线算法得到不同类型的线。v例如:用布尔数组定义出指定的类型,如间距为5的虚线:1111100000(1表示绘制点,0表示不绘制点),并使其在直线段的有效定义范围内不断重复,即扫描转换后得到的象素点依序与线型定义数组一一对应,并根据线型定义数组决定该象素点的绘制与否。若干相关问题(5)Interactive Computer Graphics-交互式计算机图形学9/14/202351线型的精确控制v采用上述固定划线长度的实现方法会在直线方向定义不同时产生出不等长的划线段。原因在于相同个数的象素沿不同方向将生成不同长度的线段。v为实现精确的线型定义,应按照线的斜率调整线型定义数组中实线段和空白段的象素数目。Interactive Computer Graphics-交互式计算机图形学9/14/202352v另一种精确定义线型的方法是:将线上的每一段实划线作为一段单独的线段,定位其始末端点坐标,再调用直线的扫描转

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!