好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

计算机图形学 复习资料.docx

24页
  • 卖家[上传人]:cl****1
  • 文档编号:459543085
  • 上传时间:2023-05-22
  • 文档格式:DOCX
  • 文档大小:307.97KB
  • / 24 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 传播优秀Word版文档 ,希望对您有帮助,可双击去除!计算机图形学复习资料第一章1 图形学定义ISO的定义:计算机图形学是研究怎样利用计算机表示、生成、处理和显示图形的原理、算法、方法和技术的一门学科通俗定义:计算机图形学以表达现实世界中的对象及景物为主要目标,其核心是解决如何用图形方式作为人和计算机之间传递信息的手段,即人机界面问题计算机图形学的研究对象——图形图形是从客观世界物体中抽象出来的带有颜色及形状信息的图和形图形的构成要素:几何要素:点、线、面、体等描述对象的轮廓、形状非几何要素:描述对象的颜色、材质等图形的表示方法:点阵法:枚举出图形中所有点(简称图像)参数法:由图形的形状参数(简称图形)2 图形与图像图像:狭义上又称为点阵图或位图图像图像是指整个显示平面以二维矩阵表示,矩阵的每一点称为一个像素,由像素点所取亮度或颜色值不同所构成的二维画面特点:A文件所占的空间大B位图放大到一定的倍数后会产生锯齿C位图图像在表现色彩、色调方面的效果比矢量图更加优越图形:狭义上又称为矢量图形或参数图形按照数学方法定义的线条和曲线组成,含有几何属性或者说更强调场景的几何表示,是由场景的几何模型和景物的物理属性共同组成的。

      特点:A文件小B可采取高分辨印刷C图形可以无限缩放3 图形学过程3D几何建模、3D动画设置、绘制(光照和纹理)、生成图像的存储和显示4 与图像处理计算机图形学:研究模型及数据的建立和由模型生成图像的过程和方法模型到图像)图像处理:将客观景物数字化成图像,研究数字化图像的采集、去噪、压缩、增强、锐化、复原及重建等图像到特征)对立统一的关系5 计算机图形信息的特点图形信息表达直观,易于理解图形信息表达精确、精炼 / 图形信息能“实时”的反映事物的分布和变化规律6 计算机图形学的应用计算机辅助设计及计算机辅助制造科学计算可视化地图制图与地理信息系统计算机动画、游戏用户接口计算机艺术7 计算机图形系统作为一个图形系统,至少应具有计算、存储、输入、输出、对话等五个方面的基本功能计算机图形系统主要有三部分构成:人、图形软件包、图形硬件设备图像硬件设备通常由图形处理器、图形输入设备和输出设备构成第二章1图形的扫描转换确定一个像素集合及其颜色,用于显示一个图形的过程,称为图形的扫描转换从本质上讲,图形的扫描转换是由参数表示形式到点阵表示形式的转换过程PS1:在输出设备上输出一个点,首先需要计算出最逼近该点的像素位置,其次需要把应用程序中的坐标信息转换成所用输出设备的相应指令PS2:在显示器有限个像素中,确定最佳逼近该直线的一组像素,并且按扫描线顺序,对这些像素进行写操作,这个过程称为直线的扫描转换。

      2 DDA算法最基本思想:从x的左端点x0开始,向x右端点步进,步长=1(个像素)X步进后,用y=kx+b计算相应的y坐标最后取像素点(x, 取整round(y))作为当前点的坐标即当x每递增1,y递增kPS:实际代码时用Y+0.5替代取整PS2:当 |k|>1时,必须把x,y地位互换按照从(x1, y1)到(x2, y2)方向不同,分8个象限例如对于方向在第1a象限内的直线而言,取增量值Dx=1,Dy=k对于方向在第1b象限内的直线而言,取增量值Dy=1,Dx=1/k其余同理优点:最简单,最直接的画线算法采用增量的思想,每计算一个像素,只需计算一个加法缺点:由于斜率很可能是小数(浮点数),因此每个加法都意味着是浮点运算,浮点运算不利于硬件实现;每次加法后还必须进行一次四舍五入后的取整运算3 中点画线法假设当前像素点为P(xp, yp) ,则下一个像素点为P1(右) 或P2(右上) 设M=(xp+1, yp+0.5),为p1与p2之中点,Q为理想直线与x=xp+1垂线的交点将Q与M的y坐标进行比较当M在Q的下方,则P2应为下一个像素点;M在Q的上方,应取P1为下一点具体算式:d=F(M)=F(xp+1,yp+0.5) =a(xp+1)+b(yp+0.5)+c(a=y0-y1, b=x1-x0,c=x0y1-x1y0)当d<0,M在Q点下方,取右上方P2为下一个像素;当d>0,M在Q点上方,取右方P1为下一个像素;当d=0,选P1或P2均可,约定取P1为下一个像素;改进1:根据前一点的判别式值d和整数增量即可得到后一点的判别式值d’。

      因此可采用增量计算,只有加法,提高运算效率若当前像素处于d>0情况,则取正右方像素P1 (xp+1, yp ), 要判下一个像素位置,应计算d’=d+a;若d<0时,则取右上方像素P2 (xp+1, yp+1)要判断再下一像素,则要计算 d’= d+a+b改进2:由于只判别d 的符号确定下一个像素位置,因此可以用2d来判别,化为整数算法递推算法中只包含加、减运算,便于硬件实现d’=d+2a;d’= d+2(a+b)4 Bresenham算法基本思想:过各行各列像素中心构造一组虚拟网格线按直线从起点到终点的顺序计算直线与各垂直网格线的交点,然后根据误差项的符号确定该列像素中与此交点最近的像素算法:假设起始位置像素落在直线上,d = 0;沿横坐标每前进一步,d 的值增加量为k, 即d = d + k;一旦d > 1,即令d = d-1, 保证 d 介于0与 1之间当d > = 0.5 时, 直线接近右上方像素,d < 0.5 时,直线接近右方像素为便于判别,令 e = d - 0.5, 则当e >= 0, 取右上方像素,当 e < 0, 取右方像素e 的初始值为 -0.5y在递增时,e在取值范围一般介于-0.5与0.5之间。

      改进:由于只判别 e 的符号,确定像素的取舍,因此可令 e’ = 2 × e × dx,通过判别 e’ 的符号确定像素取舍,不但可以避免小数运算,还能避免除法优点:增量算法、避免了浮点运算、避免了乘除法运算,节省运算量,并适合硬件实现,使用最广泛5 圆的扫描转换若已知圆弧上一点P1=C(x, y),利用其对称性便可以得到关于四条对称轴的其它7个点,即:P2=C(x,-y),P3=C(-x, y),P4=C(-x,-y),P5=C(y,x),P6=C(-y,x),P7=C(y,-x),P8=C(-y,-x)这种性质称为八对称性因此,只要扫描转换八分之一圆弧,就可以通过圆弧的八对称性得到整个圆6 中点画圆法函数(圆心在原点为例): F(x,y)=x2+ y2-R2,第一点为P(xp,yp)圆上点: F(x,y)= 0;圆外点: F(x,y)> 0;圆内点: F(x,y)< 0设M是待选像素P1,P2的中点, M坐标(xp+1,yp-0.5),判断d=F(M)若 d<0, 则取右侧P1( xp+1,yp)为下一像素,而且再下一像素的判别式为d’=d+2xp+3;若d>=0, 则应取右下P2(Xp+1,Yp-1)为下一像素,而且下一像素的判别式为d’=d+2(xp-yp)+5。

      例:第一个像素是(0,R),第一个M的坐标为(1,R-0.5),则判别式d的初始值为1.25-R改进:为了进一步提高算法的效率,可以将上面的算法中的浮点数改写成整数,将乘法运算改成加法运算,即仅用整数实现中点画圆法即使用e=d-0.25代替d,即e0=1-R则判别式 d < 0 对应于e < -0.25 ,由于 e0=1-R 的初值为整数, 且在运算中增量为整数,故 e < -0.25 等价于 e < 0 !7 Bresenham画圆法基本思路:通过比较临近像素点到圆弧的距离,设法求出该距离的递推关系,并通过符号判别像素取舍设从点Pi(xi,yi)出发,顺时针画第一个四分圆待选点与圆弧只可能有5种关系下一像素有3种可能的选择:ΔH=(xi+1)2+yi2-R2ΔD=(xi+1)2+(yi-1)2-R2ΔV=xi2 +(yi-1)2-R2 选择像素的原则:使其与实际圆弧的距离平方达到最小具体算法:考察右下角像素D 与实际圆弧的近似程度:ΔD=(xi+1)2+(yi-1)2-R2当ΔD<0时,D在圆内,情形①②当ΔD=0时,D在圆上,情形③当ΔD>0时,D在圆外,情形④⑤结论:当ΔD<0时,若2 (ΔD+yi) -1 ≤0,选H若2 (ΔD+yi) -1 >0,选D当ΔD>0时,若2 (ΔD -xi)-1 ≤0,选D 若2 (ΔD -xi)-1 >0,选V当ΔD=0时,选D完整流程:(1) 初值:从(0, R)开始画圆, ΔD=(0+1)2+(0-1)2-R2 =2(1-R);(2) 根据ΔD的符号判断,计算dHD或 dDV,确定选中D、H、V中某点;(3) 若下一像素为H(x’,y’) =(x+1,y),则 Δ’D= ΔD+2x’+1;(4) 若下一像素为D(x’,y’) =(x+1,y-1),则 Δ’ D = ΔD+2x’-2y’+2;(5) 若下一像素为V(x’,y’) =(x,y-1),则 Δ’ D = ΔD-2y’+1;(6) 重复(2)~(5), 直至完成圆弧。

      第三章1多边形的表示方法A顶点表示:用多边形的顶点序列来刻画多边形特点:表示方法直观,几何意义强,占内存空间少但没指明哪些像素在多边形内,不能直接用于着色B点阵表示:用位于多边形内部或边界上的像素集合来刻画多边形会失去很多重要的几何信息,但它是光栅显示系统显示面着色时所需的图形表示形式2 扫描转换与区域填充的联系与区别(1)定义多边形的扫描转换:从多边形顶点表示到点阵表示的转换,这种转换称为多边形的扫描转换这种转换就是给多边形包围的区域着色的过程即从多边形的给定边界出发,求出位于其内部的各个像素,并将其灰度和颜色值写入帧缓存中相应单元主要用来填充多边形区域以及由多边形拟合的其他简单曲线区域区域填充:从给定的位置开始涂描直到指定的边界为止区域是指一组相邻而又相连的像素,且具有相同的属性区域填充可用在具有复杂形状边界的多边形以及交互式绘图系统中2)联系都是光栅图形面着色,二者可相互转换当已知顶点表示的多边形内一点作为种子点,并用扫描转换直线段的算法将多边形的边界表示成八连通区域后,多边形扫描转换问题就可转化为区域填充问题;若已知给定区域是多边形区域,并且通过一定的方法求出它的顶点坐标,则区域填充问题便可以转化为多边形扫描转换问题。

      3)区别A基本思想不同,各自应用的场合不同多边形扫描转换是指将多边形的顶点表示转换成点阵表示的方法,而区域填充只改编了区域的填充颜色,没有改变区域的表示方法B对边界的要求不同多边形扫描转换不要求多边形的边界封闭而区域填充为了防止递归填充时跨越区域的边界,需设定边界C基于的条件不同多边形扫描转换是从多边形的边界信息出发,利用多种形式的连贯性进行填充;区域填充算法给定区域内一点作为种子点,从这点根据连通性将新的颜色扩散到整个区域3 矩形填充填充从ymin到ymax每条扫描线位于xmin和xmax之间的区段就可以了共享边的处理方式:如果像素的中心落在矩形边界的左方或下方时,该像素属于矩形,否则不属于该矩形区域,也就是说,如果象素的中心落在矩形边界的右方或上方时,该象素不属于矩形区域。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.