计算机图形学第二版(陆枫)课后习题答案部分

计算机图形学第二版(陆枫)课后习题集 第一章 绪论

概念:计算机图形学、图形、图像、点阵法、参数法、 图形的几何要素、非几何要素、数字图像处理; 计算机图形学和计算机视觉的概念及三者之间的关系; 计算机图形系统的功能、计算机图形系统的总体结构。

第二章 图形设备 图形输入设备:有哪些。

图形显示设备:CRT的结构、原理和工作方式。 彩色CRT:结构、原理。

随机扫描和光栅扫描的图形显示器的结构和工作原理。

图形显示子系统:分辨率、像素与帧缓存、颜色查找表等基本概念,分辨率的计算

第三章 交互式技术

什么是输入模式的问题,有哪几种输入模式。

第四章 图形的表示与数据结构 自学,建议至少阅读一遍

第五章 基本图形生成算法 概念:点阵字符和矢量字符; 直线和圆的扫描转换算法; 多边形的扫描转换:有效边表算法;

1

区域填充:4/8连通的边界/泛填充算法; 内外测试:奇偶规则,非零环绕数规则;

反走样:反走样和走样的概念,过取样和区域取样。

5.1.2 中点 Bresenham 算法(P109)

斜率 K 误差项 d 理想点 Q 取下一个点 <0 <1 >=0 <0 >1 >=0 <0 <-1 >=0 <0 >-1 >=0 在中点上 取上点 d-2△y 在中点右 取右点 d-2△x 在中点下 取下点 d+2△x-2△y 在中点左 取左点 d-2△x 在中点左 取左点 d-2△x+2△y 在中点下 取下点 d-2△y 在中点右 取右点 d-2△x+2△y d 更新 在中点上 取上点 d+2△x-2△y 5.1.2 改进 Bresenham 算法(P112)

斜率 K 改进误差项 e 理想点 Q 取下一个点 e 更新 <0 <1 >=0 <0 >1 >=0 <0 <-1 >=0 <0 >-1 >=0

2

在中点上 取上点 e-2△x 在中点下 取下点 e+2△y 在中点右 取右点 e-2△y 在中点左 取左点 在中点左 取左点 在中点右 取右点 e+2△x e-2△y e+2△x 在中点下 取下点 e-2△x 在中点上 取上点 e+2△y 习题解答 习题5 (P144)

5.3 试用中点Bresenham算法画直线段的原理推导斜率为负且大于1的直线段绘制过程 (要求写清原理、误差函数、递推公式及最终画图过程)。(P111) 解: k<=-1 |△y|/|△x|>=1 y为最大位移方向

故有

构造判别式:

推导d各种情况的方法(设理想直线与y=yi+1的交点为Q): 所以有: yQ-kxQ-b=0 且 yM=yQ d=f(xM-kxM-b-(yQ-kxQ-b)=k(xQ-xM) 所以,当k<0,

d>0时,M点在Q点右侧(Q在M左),取左点 Pl(xi-1,yi+1)。 d<0时,M点在Q点左侧(Q在M右),取右点 Pr(xi,yi+1)。 d=0时,M点与Q点重合(Q在M点),约定取右点 Pr(xi,yi+1) 。

所以有

递推公式的推导: d2=f(xi-1.5,yi+2) 当d>0时,

d2=yi+2-k(xi-1.5)-b 增量为1+k

3

=d1+1+k 当d<0时,

d2=yi+2-k(xi-0.5)-b 增量为1 =d1+1 当d=0时,

5.7 利用中点 Bresenham 画圆算法的原理, 推导第一象限y=0到y=x圆弧段的扫描转换算法

(要求写清原理、误差函数、递推公式及最终画图过程)。(P115)

y坐标 圆心角 α 误差项 d 理想点 Q 取下一个点 d 更新 <0 >=0 <0 >=0 在中点右 取右点 d+2y+3 y=0 0°<=α<=45° y=x y=x 45°<=α<=90° y=1 在中点左 取左点 d-2(y-x)+5 在中点上 取上点 d+2x+3 在中点下 取下点 d-2(x-y)+5 解:在x=y到y=0的圆弧中,(R,0)点比在圆弧上,算法从该点开始。

4

最大位移方向为y,由(R,0)点开始,y渐增,x渐减,每次y方向加1,x方向减1或减0。 设P点坐标(xi,yi),下一个候选点为右点Pr(xi,yi+1)和左点Pl(xi-1,yi+1), 取Pl和Pr的中点M(xi-0.5,yi+1),设理想圆与y=yi+1的交点Q, 构造判别式:

d=f(xM,yM)=(x-0.5)+(yi+1)+R

当d<0时,M在Q点左方(Q在M右),取右点Pr(xi,yi+1) 当d>0时,M在Q点右方(Q在M左),取左点Pl(xi-1,yi+1) 当d=0时,M与Q点重合,约定取左点Pl(xi-1,yi+1)

2

2

2

所以有:

推导判别式:

d>=0时,取左点Pl(xi-1,yi+1),下一点为(xi-1,yi+2)和(xi-2,yi+2)

d<0时,取右点Pr(xi,yi+1),下一点为(xi,yi+2)和(xi-1,yi+2)

d0=f(R-0.,1)=R-R+0.25+1-R

5.11 如图5-59所示多边形,若采用扫描转换算法(ET边表算法)进行填充,

5

2

2=1.25-R

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4