成都理工大学2010-2011学年_第一学期《计算机图形学》考试试卷_A
- 格式:pdf
- 大小:376.38 KB
- 文档页数:8
—1—成都理工大学2010—2011学年
第一学期《计算机图形学》考试试卷A
大题一二三四总分得分
一、填空(将正确答案填入对应小题中,每小题3分,共30分)
1、计算机图形学是研究利用计算机来显示、生成和处理图形的原理、方
法和技术的一门学科。
2、光栅图形子系统的两个重要部件是:帧缓冲存储器和显示控制器。
3、平行投影与透视投影区别是平行投影不具有透视缩小性;正投影与斜投
影的区别是投影方向和投影面是否垂直。
4、三次样条曲线常用的约束条件有自由端、夹持端、抛物端。
5、使用下面的二维图形变换矩阵:
T=
103020001
产生变换的结果是沿Y方向放大2倍,沿X方向平移3。
6、构造一个3次Bezier曲面需要16个控制点;若修改3次B样条曲线控
制点,最多影响三次B样条曲线段数是4。
7、OpenGL三维平行投影函数是glOrtho(left,botton,right,top,near,far)。
8、请写出正等测投影的投影矩阵{√2/2-√6/600|0√6/300|-√2/2-√6/600|0001}(转换成矩阵
)。
9
、在图形学中通常用哪几个参数定义观察坐标系观察参考点、观察平面法
向量、观察正向。
10、
消隐算法按实现方式分为:图像空间和景物空间消隐算法两类。︵
︶—2—二、选择填空(选择正确的答案填入对应题号,每小题2分,共20分)
1、使用下列二维图形变换矩阵:
T=
100001010
,产生变换的结果为D。
A沿X坐标轴平移1个单位,同时沿Y坐标轴平移-1个单位
B绕原点逆时针旋转90度
C沿X坐标轴平移-1个单位,同时沿Y坐标轴平移1个单位
D绕原点顺时针旋转90度
2、下面哪个OpenGL函数的调用会改变材质的漫反射光系数B。
AglMaterialfv(GL_FRONT,GL_AMBIENT,amb)
BglMaterialfv(GL_FRONT,GL_DIFFUSE,dif)
CglLightfv(GL_FRONT,GL_AMBIENT,amb)
DglLightfv(GL_FRONT,GL_DIFFUSE,dif)
3、下面那种特性是B样条曲线不具有的C。
A对称性B凸包性
C通过特征多边形的起点和终点D局部性
4、下面几种连续变换,试问哪一种变换矩阵不能互换D。
A两个连续的旋转变换B两个连续的平移变换
C两个连续的比例变换D平移变换与旋转变换
5、下列有关投影的叙述语句中,不正确的论述为A。
A透视投影与平行投影相比,能真实的反映物体的精确的尺寸和形状
B平行投影的投影中心到投影面距离是无限的
C透视投影的灭点可以有多个
D与斜等测投影面垂直的任何直线段,其投影长度不变—3—6、下面对于Bezier曲线端点的描述是最准确的C。
A曲线过多边形的端点P1和Pn
B曲线与多边形的端点直线P
1P
2和P
nP
n-1相切
C曲线过多边形的端点P1和Pn并与端点直线P
1P
2和P
nP
n-1相切
D曲线无约束,仅与控制点有关。
7、下面那种方法不会减少图形走样现象A。
A增加画线宽度B提高屏幕分辨率
C使用区域采样算法D使用加权区域采样
8、图形学引入齐次变换矩阵的意义是B。
A便于矩阵运算B提高图形变换速度
C便于进行投影变换D有利于将二维图形变换为三维图形
9、连续的三次参数样条曲线是由一系列的Hermite曲线段连接起来的,
指出是依据下面哪个条件建立构成的C。
AC(0)BC(1)CC(2)D两Hermite曲线段端点值相等
10、下面关于Bresenham圆弧生成算法描述正确的是A。
ABresenham不必做四舍五入运算
BBresenham算法速度快但效果没有DDA方法好
CBresenham算法需要做除法
DBresenham算法只能绘制八分之一圆弧
三、问答题(共30分)
1、试写出实现下面图形的组合变换矩阵。其中A(X
a,Y
a),矩形的宽度为W,
矩形的高度为H,旋转角度为α。(10分)—4—
α
BC
A'
AD'DC'
B'y
x
O
T1={100|010|-Xa-Ya1}
T2={cosasina0|-sinacosa0|001}
T3={100|010|-Xa-Ya1}
2、已知空间轴AB,A点坐标为(0,0,0),B点的坐标(2,1,1)
请写出关于AB旋转θ角度的组合旋转矩阵,及简要过程。(10分)
T1={1000|01/√21/√20|0-1/√21/√20|0001}
T2={1/30-√8/30|0100|√8/301/30|0001}
T3={1000|0cosθsinθ0|0-sinθcosθ0|0001}
T4={1000|01/√2-1/√20|01/√21/√20|0001}
T5={1/30√8/30|0100|-√8/301/30|0001}
3、已知多边形顶点坐标:P0(2,5)、P1(1,3)、P2(2,1)、P3(6,3)、P4(4,6)要
求写出利用扫描线算法填充时的:
(1)多边形边表桶结构
(2)扫描线Y=2时的有效边表(10分)
P0
32
1456123456
P1
P2P3P4—5
—四、编程题(
共20分)
1、试编写函数
lineClip(int&x0,int&y0,int&x1,int&y1,intxl,intyb,
intxr,intyt);实现直线的编码裁剪。其中
x0,y0,x1,y1为直线端点处坐标,
xl,yb,xr,yt定义了裁剪窗口。
(10分)—6
—2、试编写程序函数
drawBSpline(Point*pts,intn);实现三次B样条曲线绘制,
其中
pts为控制点数组,
n为控制点个数,顶点结构体定义如下:
typedefstruct_Point{
intx,y;—7—}Point;
另设直线绘制函数为
drawLine(intx0,inty0,intx1,inty1);(10分)—8
—