计算机图形学复习题带答案.docx
《计算机图形学复习题带答案.docx》由会员分享,可在线阅读,更多相关《计算机图形学复习题带答案.docx(23页珍藏版)》请在冰豆网上搜索。
计算机图形学复习题带答案
一. 判断题(请在后面括号中打T或F)
1.阴极射线管的技术指标主要是分辨率和显示速度;(Y)
2.光栅扫描式图形显示器可看作是点阵单元发生器,可直接从单元阵列中的一个可编地址的象素画一条直线到另一个可编地址的象素;(N)
3.计算机图形学标准通常是指数据文件格式标准和子程序界面标准;(Y)
4.在种子填充算法中所提到的八向连通区域算法同时可填充四向连通区;(Y)
5.边填充算法中是将扫描线与多边形交点左方的所有象素取补;(N)
6.插值得到的函数严格经过所给定的数据点;逼近是在某种意义上的最佳近似;(Y)
7.齐次坐标提供了坐标系变换的有效方法,但仍然无法表示无穷远的点;(N)
8.若要对某点进行比例、旋转变换,首先需要将坐标原点平移至该点,在新的坐标系下做比例或旋转变换,然后在将原点平移回去;(Y)
9.显式方程和参数曲线均可以表示封闭曲线或多值曲线;(N)
10.凡满足
连续的曲线同时满足
连续条件,反之则不成立;(N)
11.计算机图形生成的基本单位是线段。
(F)
12.一个逻辑输入设备可以对应多个物理输入设备。
(T)
13.DDA(微分方程法)是Bresenham算法的改进。
(F)
14.光的强度计算公式通常表示为:
I=0.59I+0.30I+0.11I(T)
15.Bezier曲线具有对称性质。
(T)
16.Gourand光照模型能够即使出高光部位的亮度。
(F)
17.NURBS曲线方法不能够提供标准解析曲线和自由曲线的统一数学
表达。
(F)
18.Phong算法的计算量要比Gourand算法小得多。
(F)
19.齐次坐标系不能表达图形中的无穷远点。
(F)
20.欧拉公式
v–e+f=2
也适用于三维形体中的相关信息描述。
(T)
二. 单选题
1.下面关于反走样的论述哪个是错误的?
(D)
A.提高分辨率;
B.把象素当作平面区域进行采样;
C.采用锥形滤波器进行加权区域采样;
D.增强图象的显示亮度;
2.多边形填充时,下述哪个论述是错误的?
(C)
A.多边形被两条扫描线分割成许多梯形,梯形的底边在扫描线上,腰在多边形的边上,并且相间排列;
B.多边形与某扫描线相交得到偶数个交点,这些交点间构成的线段分别在多边形内、外,并且相间排列;
C.在判断点是否在多边形内时,一般通过在多边形外找一点,然后根据该线段与多边形的交点数目为偶数即可认为在多边形内部,若为奇数则在多边形外部,而且不需考虑任何特殊情况;
D.边的连贯性告诉我们,多边形的某条边与当前扫描线相交时,很可能与下一条扫描线相交;
3.下面关于NURBS的论述,哪个是错误的?
(B)
A.可通过控制顶点和权因子来改变形状;
B.仅具有仿射不变性,但不具有透射不变性;
C.非有理B样条、有理及非有理Bezier曲线、曲面是NURBS的特例;
D.可表示标准解析形状和自由曲线、曲面;
4.在光亮度插值算法中,下列论述哪个是错误的?
(D)
A.Gouraud明暗模型计算中,多边形与扫描平面相交区段上每一采样点的光亮度值是由扫描平面与多边形边界交点的光亮度插值得到的;
B.Phong明暗处理模型中,采用了双线性插值和构造法向量函数的方法模拟高光;
C.Gouraud明暗模型和Phong明暗处理模型主要是为了处理由多个平面片近似表示曲面物体的绘制问题;
D.Phong明暗模型处理的物体表面光亮度呈现不连续跃变;
5.下述关于Bezier曲线
的论述,哪个是错误的?
(A)
A.
在P处
的切矢量方向相同,大小相等,则
在P处具有
连续;
B.
在P处
的切矢量方向相同,大小相等,则
在P处具有
连续;
C.若保持原全部顶点的位置不变,只是把次序颠倒过来,则新的Bezier曲线形状不变,但方向相反。
D.曲线的位置和形状只与特征多边形的顶点的位置有关,它不依赖坐标系的选择。
6.实验表明,镜面反射系数W(θ)与物体类型和角度有关。
当角度θ在30到60度时,金、银、玻璃三种物体的W(θ)值从小到大依次为:
B
A银、金、玻璃;B玻璃、银、金;
C金、玻璃、银;D玻璃、金、银。
7.分辨率为1024*1024的显示器,其位平面数为24,则帧缓存的字节数应为:
A
A3MBB2MB
C1MBD512KB
8.B样条曲线P(t)中的基函数Ni,k(t)的结点向量取为B
(0,0,…0,1,1,…1)
时,则曲线
A是一条折线B不是折线,是Bezier曲线
C既不是A,也不是B;C不确定
9.在三维齐次变换矩阵
abcl
defm
ghIn
pqrs
中,平移线性变换对应的矩阵元素的最大非零个数是C
A3;B6;C7;D8
10.在(9)中,均匀的整体放大变换对应的矩阵元素的非零非1个数是
A1;B2;C3;D4
11.在透视投影中,主灭点的最多个数是:
C
A1;B2;C3;D4
12.在多边形面片数量很大时;消隐算法最快的应该是:
C
AZ-BufferB扫描线
C画家算法D不确定
13.在三维几何造型方法中,局部操作能力比较弱的方法是A
A体素造型B八叉树造型
CB-rey造型D特征造型
14.计算机显示设备一般使用的颜色模型是A
ARGBBHSV
CCMYD不在A,B,C中出现
15.Ray-tracing方法中所考虑的光线包括B
A漫射,反射,不包括透视B透射,反射,不包括漫射
C漫射,透射,不包括反射D反射,漫射,透射
三. 多选题
1.关于光栅扫描式图形显示器,具有这样的特点:
(B,C)
A.桢缓存和光栅显示器均是数字设备;
B.需要足够的位面和桢缓存才能反映图形的颜色和灰度;
C.对于彩色光栅显示器的R.G,B三原色需要三个位面的桢缓存和三个个电子枪;
D.对原色配置颜色查找颜色查找表的目的是为了提高显示的速度;
2.关于计算机图形标准化的论述,哪个是正确的(A,C,D);
A.CGM和CGI是面向图形设备的接口标准;
B.GKS、IGES、STEP均是ISO标准;
C.IGES和STEP是数据模型和文件格式的标准;
D.PHIGS具有模块化的功能结构;
3.用户接口形式包括:
(A,B,C);
A.子程序库;
B.专用语言;
C.交互命令;
D.交互标准;
4.下列关于Bezier曲线的性质,哪个是正确的?
(A,C,D)
A.在起点和终点处的切线方向和控制多边形第一条边和最后一条边的方向一致;
B.B. 在端点处的R阶导数,仅与R个相邻个控制顶点有关;
C.C. 曲线及其控制多边形在起点处有什么几何性质,在终点处也有什么性质;
D.D. 对于平面曲线而言,其与某直线的交点个数不多于该直线与控制多边形的交点个数;
5.关于NURBS中的权因子W,下面的那些论述是正确的?
(B,C)
A.随着W的增/减,曲线则远离/靠近相应的控制顶点;
B.相应于某给定的参数的NURBS曲线上的点,在W不同时将扫描出一条直线段;
C.若NURBS曲线上的点趋向相应的控制顶点,则权因子趋向正无穷;
D.若控制顶点相同,所有的权因子分别扩大10倍,所得的曲线将比原曲线更逼近控制顶点;
6.以下关于图形变换的论述那些是正确的?
(A,C,D)
A.平移变换不改变图形大小和形状,只改变图形位置;
B.错切变换虽然可引起图形角度的改变,但不会发生图形畸变;
C.拓扑关系不变的几何变换不改变图形的连接关系和平行关系;
D.旋转变换后各图形部分间的线性关系和角度关系不变,变换后直线的长度不变;
7.在几何造型中,下列论述中那些是正确的?
(CD)
A.在形体定义中,允许存在孤立的点;
B.面是形体上一个有限、非零的区域,一般由一个外环和若干个内环组成,但也可以没有任何环;
C.环是有序、有向边组成的面的封闭边界,环中的边不能相交,相邻的两条边可以共享一个端点;
D.形体上任意一点的足够小的邻域在拓扑上应该是一个等价的封闭圆;
8.分数维造型方法中,下列论述中哪个是正确的?
(A,B,D)
A.二维空间中的一个分数维曲线的维数在1-2之间;
B.三维空间中的一个分数维曲线的维数在1-3之间;
C.三维空间中的一个分数维曲面的维数在1-3之间;
D.三维空间中的一个分数维曲面的维数在2-3之间;
9.在各种消隐算法中,下列那些论述是正确的?
(A,B,C,D)
A.画家算法的基本思想是先将屏幕赋值为背景色,然后在把物体各个面按其到视点距离远近排序;
B.Z缓冲算法不仅需要桢缓冲区存放象素的亮度值,还需要一个Z缓冲区存放每个象素的深度值;
C.扫描线算法首先按扫描行顺序处理一桢画面,在由视点和扫描线所决定的扫描平面上解决消隐问题;
D.区域采样算法是利用图形的区域连贯性在连续的区域上确定可见面及其颜色和亮度;
10.在光照明模型中,下列论述那些是正确的?
(A,B,C,D)
A.Lambert漫反射模型模拟理想漫射表面的光亮度,没有考虑模型表面的镜面反射效果;
B.Phong模型将表面漫反射光亮度和镜面反射光亮度看作为是对光源入射光的直接反射,且相互独立;
C.Blinn和Cook-Torrance模型是对Phong模型的改进,将镜面反射光是入射光的函数因素考虑进来,因而产生的光照效果更加逼真;
D.整体光照模型同时模拟了光源引起的漫反射分量、镜面反射分量,以及环境反射分量;
11. 在计算机图形的标准化论述中,下列是正确的结论有:
AB
AGKS、PHIGS都是国际标准;
BCGM、CGI都是国际标准;
CIGES、DXF都是国际标准;
DSTEP不是国际标准。
12. 在计算机图形关于Modeling的物体的描述中,下列是不正确的结论有:
ABD
A一根直线是物体;
B一个空间的点是物体;
C一个立方体是物体;
D三维欧氏空间点的集合是物体。
13. 凸包计算的主要用途在于:
BC
A多边形裁剪;B区域填充;
C消隐;D上述三种中的一个。
14.字符串裁剪的精度分类中哪些是不对的:
ASTROKE、TEXT和CHAR;BSTROKE、TEXT和STRING;
CCHAR、STROKE和STRING;DCHAR、DTRING和TEXT。
15.灰度等级为256极,分辨率为1024*1024的显示器,至少需要的帧缓存容量为(B)
A:
512KB;B:
1MBC:
2MB;D:
3MB
16.在下列叙述语句中,正确的论述为(ABD)
A:
在图形文件系统中,点、线、圆等图形元素通常都用其几何特征参数来描述;
B:
在图形系统中,图形处理运算的精度不取决于显示器的分辨率;
C:
在光栅扫描图形显示器中,所有图形都按矢量直接描绘显示,不存在任何处理;
D:
在彩色图形显示器中,使用RGB颜色模型。
17.使用下列二维图形变换矩阵:
将产生变换的结果为(D)
A:
图形放大2倍;
B:
图形放大2倍,同时沿X、Y坐标轴方向各移动1个绘图单位;
C:
沿X坐标轴方向各移动2个绘图单位;
D:
沿X坐标轴方向放大2倍,同时沿X、Y坐标轴方向各平移1个绘图单位。
18.下列有关Bezier曲线性质的叙述语句中,错误的结论为(BD)
A:
Bezier曲线可用其特征折线集(多边形)来定义;
B:
Bezier曲线必须通过其特征折线集(多边形)的各个顶点;
C:
Bezier曲线两端点处的切线方向必须与起特征折线集(多边形)的相应两端线段走向一致;
D:
n次Bezier曲线,在端点处的r阶导数,只与r个相邻点有关。
19.下列有关物体的几何表示法的叙述语句中,正确的论述为(AC)
A:
在计算机图形学中,通常所谓"物体"是三维欧氏空间点的集合;
B:
一组三维欧氏空间点的集合都可看成一个(组)"物体";
C:
单个孤立的点不是"物体";
D:
一根直线段或单张曲面都是"物体"。
20.下列有关边界表示法的叙述语句中,错误的论述为(C)
A:
定义了物体的边界也就唯一的定义了物体的几何形状边界;
B:
物体的边界上的面是有界的,而且,面的边界应是闭合的;
C:
物体的边界上的面是有向的,面的法向总是指向物体的内部;
D:
物体的边界上的边可以是曲线,但在两端之间不允许曲线自相交。
21.下列有关平面几何投影的叙述语句中,正确的论述为(AC)
A:
在平面几何投影中,若投影中心移到距离投影面无穷远处,则成为平行投影;
B:
透视投影与平行投影相比,视觉效果更有真实感,而且能真实地反映物体的精确的尺寸和形状;
C:
透视投影变换中,一组平行线投影在与之平行的投影面上,不产生灭点;
D:
在三维空间中的物体进行透视投影变换,可能产生三个或者更多的生灭点。
22.下列有关简单光反射模型的描述语句中,错误的论述为(B )
A:
简单光反射模型,又称为Phong模型,它模拟物体表面对光的反射作用;
B:
在简单光反射模型中,假定光源是点光源,而且,仅仅关注物体表面对光的镜面反射作用;
C:
简单光反射模型主要考虑物体表面对直射光照的反射作用;
D:
在简单光反射模型中,对物体间的光反射作用,只用一个环境光变量做近似处理。
23.下列有关曲线和曲面概念的叙述语句中,正确的论述为(ACD)
A:
实体模型和曲面造型是CAD系统中常用的主要造型方法,曲面造型是用参数曲面描述来表示一个复杂的物体;
B:
参数形式和隐含形式都是精确的解析表示法,在计算机图形学中,它们同样好用;
C:
从描述复杂性和形状灵活性考虑,最常用的参数曲面是3次有理多项式的曲面;
D:
在曲线和曲面定义时,使用的基函数应有两个重要性质:
凸包性和仿射不变性。
四.问答题:
1. 写一个显示一串字符的程序。
答:
显示一串字符的参考程序如下:
Graph_puts(intx0,inty0,char*string)
{
charcurrent_char;
intfont_mask[FONT_WIDTH][FONT_HEIGHT];
inti,j;
for(j=0;string[j]!
="\0";j++)
{current_char=string[j];
get_font(font_mask,current_char);//从字库里取得当前的字模
for(i=0;ifor(j=0;jif(font_mask[i][j])
write_pixel(x0+i,y0+j,FONT_COLOR);
else
write_pixel(x0+i,y0+j,BACKGROUND_COLOR);
}
}
2. 分别写出平移、旋转、缩放及其组合的变换矩阵。
⑴.平移变换:
其中,
是物体在三个坐标方向上的位移量。
⑵.旋转变换:
绕Z轴旋转的公式为:
绕X轴旋转的公式为:
绕Y轴旋转的公式为:
如果旋转所绕的轴不是坐标轴,设其为任意两点p1,p2所定义的矢量,旋转角度为
。
则可由7个基本变换组合构成:
①.
使p1,点与原点重合;
②.
,使轴p1p2落入平面xoz内;
③.
,使p1p2与z轴重合;
④.
,执行绕p1p2轴的
角旋转;
⑤.
,作3的逆变换;
⑥.
,作2的逆变换;
⑦.
作1的逆变换。
⑶.缩放变换:
其中,
,
,
是物体在三个方向上的比例变化量。
记为
。
若对于某个非原点参考点
进行固定点缩放变换,则通过如下的级联变换实现:
3. 如何用几何变换实现坐标系的变换?
坐标系的变换,亦即将某一坐标系lcs1中的点
变换为另一个坐标系lcs2下的坐标
。
若
,
矩阵的推导分三部。
⑴将lcs1中的点变换到世界坐标系的矩阵
;
x_axis,y_axis,z_axis为lcs1中x,y,z轴矢量在世界坐标系的表示
org为lcs1中原点在世界坐标系的表示
⑵将世界坐标系的点变换到lcs2中的点矩阵
;
x_axis,y_axis,z_axis为lcs1中x,y,z轴矢量在世界坐标系的表示
org为lcs1中原点在世界坐标系的表示
a=-x_axis.x*org.x-x_axis.y*org.y-x_axis.z*org.z
b=-y_axis.x*org.x-y_axis.y*org.y-y_axis.z*org.z
c=-z_axis.x*org.x-z_axis.y*org.y-z_axis.z*org.z
4. 计算机图形显示器和绘图设备表示颜色的方法各是什么颜色系统?
它们之间的关系如何?
答:
计算机图形显示器是用RGB方法表示颜色,而绘图设备是用CMYK方法来表示颜色的。
它们之间的关系是:
两者都是面向硬件的颜色系统,前者是增性原色系统,后者是减性原色系统,后者是通过在黑色里加入一种什么颜色来定义一种颜色,而后者是通过指定从白色里减去一种什么颜色来定义一种颜色。
5. 简述帧缓存与显示器分辨率的关系。
分辨率分别为640×480,1280×1024,和2560×2048的显示器各需要多少字节位平面数为24的帧缓存?
答:
帧缓存的大小和显示器分辨率之间的关系是:
帧缓存的大小=显示器分辨率的大小*帧缓存的位平面数/8。
例如:
分辨率分别为640*480的显示器所需要的缓存的大小是:
640*480*24/8=921600字节;分辨率为1280*1024的显示器所需要的缓存的大小是:
1280*1024*24/8=3932160字节;分辨率为2560*2048的显示器所需要的缓存的大小是:
2560*2048*24/3=15728640字节。
6. 画直线的算法有哪几种?
画圆弧的算法有哪几种?
写一个画带线宽的虚线的程序。
答:
通常画直线的方法有三种:
(1)逐点比较法;
(2)数值微分法;(3)Bresenham算法。
画弧线的常用方法有:
(1)逐点比较法;
(2)角度DDA法;(3)Bresenham算法。
一个基于数值微分法的带线宽的画虚线的参考程序如下:
Draw_wide_dashed(intx0,inty0,intx1,inty1,intwidth,intcolor)
{
intj;
floatdx,dy,k,x,y,startx,starty;
dx=abs(x1-x0);
dy=abs(y1-y0);
k=dy/dx;
if(abs(k)<=1)//如果斜率不大于1,则x的增长大于y的增长。
{
startx=x0x0:
x1;
for(j=width;j>0;j++)
{y=starty;//
for(x=startx;x{
drawpixel(x,int(y+0.5),color);
y=y+k;
};
starty=starty+1;//每次画一条宽为1的斜线时重新调整起点
startx=startx-1/k;
}
}
else
{
starty=y0y0:
y1;
for(j=width;j>0;j++)
{x=startx;
for(y=starty;y{
drawpixel(int(x+0.5),y,color);
x=x+1/k;
};
startx=startx+1;
starty=starty-1/k;
}
}
}
7. 写一个画饼分图的程序,用不同的颜色填充各个区域。
答:
画饼分图的参考程序如下:
Draw_pie(intx,inty,floatradius,float*percent)
{
floatseed_x,seed_y;
intcolor,i;
color=0;
floatangle=0;
draw_circle(x,y,radius);
draw_line(x,y,x+radius,y);
for(i=0;percent[i]<=0;i++)
{seed_x=x+radius*cos(angle+PI*percent[i]/100);
seed_y=y+radius*sin(angle+PI*percent[i]/100);
/*在新的扇区中间找一个种子点作为填色之用*/
angle=angle+2*PI*percent[i]/100;
draw_line(x,y,x+radius*cos(),y+radius*sin());
seed_filling(seed_x,seed_y,color++,BACKGROUND_COLOR);
}
}
8. 写出几种线裁剪算法;写出几种多边形裁剪算法。
答:
线的裁剪算法:
⑴矢量裁剪法
⑵编码裁剪法
⑶中点分割裁剪法
多边形的裁剪算法:
⑴逐边裁剪法
⑵双边裁剪法
9. 写出Bezier曲线和面片的几种表达形式。
空间给定的n+1个点
,称下列参数曲线为n次的Bezier曲线。
其中
是Bernstein基函数,即
i=0,1,…,n
空间给定的(n+1)*(m+1)个点
为曲面片的控制顶点(i=0,1,…,n;j=0,1,…,m),则下列张量积形式的参数曲面为
次的Bezier曲面:
Bezier曲面齐次坐标形式为:
其中
为Bernstein多项式。
10.写出B样条的矩阵形式和调和函数。
为什么使用非均匀有理B样条?
n+1个控制点
K阶(K-1次)B样条曲线的表达式是:
其中
是调和函数,按照递归公式可定义为:
其中
是节点值,
是K阶B样条函数的节点矢量。
非均匀B样条函数的节点参数沿参数轴的分布是不等距的,近年来,