计算机图形学知识点与题型
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、概念解释 1. 齐次坐标
就是由n+1维向量表示一个n 维向量。如n 维向量(P 1,P 2, … ,P n )表示为(hP 1,hP 2, hP n ,h ),其中h 称为哑坐标。 2.分辨率
显示器屏幕上水平方向和垂直方向上能被识别的光点的最大数目。 3. 投影中心
投影线汇聚的交点称为投影中心 4. 分析裁剪
确定图形中哪些部分落在显示区之内,哪些落在显示区之外,以便只显示落在显示区内的那部分图形的选择过程称为裁剪。图形是在世界坐标系定义,而在设备坐标系输出,因而裁剪可在世界坐标系中进行,或是在设备坐标系中进行,由于世界坐标系为实数坐标系,故世界坐标系中的裁剪也称为分析裁剪,表示精确。
二、问答题
1.试述计算机图形学的主要研究内容。
概括地说就是利用计算机进行图形的计算、处理和显示的相关原理与算法。主要包括:图形的输入,图形的处理,图形的生成和输出。
2.试述彩色CRT 显示器色彩显示原理。
利用复杂的荧光涂层技术,在荧光屏上均匀涂以能发出红绿蓝三基色为一组的荧光涂层,并利用置于荧光屏前的带孔的金属板使电子枪能精确定位每一组荧光涂层的三个荧光点,同时设置多个电子枪的强度级别,从而能使荧光点能组合出多种不同强度三基色发光组合来的产生丰富的色彩。
3.试画出三维显示流程。
4.简述曲线拟合的两种方法。
利用已知的若干点(称为型值点或控制点)来构造曲线称为曲线拟合。曲线拟合有插值和逼近两种方法,对给定的型值点(控制点),插值方法要求所构造的曲线要严格通过型值点,而逼近方法则只要求构造的曲线近似地接近已知的型值点
三、计算题
1.求关于参考点F(x f ,y f )的旋转变换矩阵。
采用变换合成的方法
先把旋转中心F (x f ,y f )平移至坐标原点,即坐标平移(-x f ,-y f ),变换矩
模型变换 观察变换 投影 窗口至视区变换
显示
关于视见
体裁剪
模型 坐标
世界 坐标
观察
坐标
投影平 面坐标
阵为:
然后进行关于原点的旋转变换,变换矩阵:
最后,再把作之前平移的逆变换,变换矩阵为:
故所求矩阵为:
2.已知三角形ABC 各顶点的坐标A(1,4)、B(5,2)、C(3,5),相对直线X=4做对称变换后到达A ’、B ’、C ’。试计算A ’、B ’、C ’的坐标值。(要求用齐次坐标进行变换,列出变换矩阵)
解:变换矩阵为:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-100
01
801
⎥⎥⎥⎦
⎤
⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-11
1
524537
11
1
524351
100
010801
故变换后坐标为A ’(7,4),B ’( 3,2),C ’(5,5)
3.请写出平面上任意一点相对于直线P 1P 2(线段的坐标分别为:P 1 (-1,-3) 、P 2 (8,3) )做对称变换的变换矩阵。(要求列出计算式子,不要求计算结果。)
解:直线P 1P 2方程为:3
7
32-=x y
变换步骤:
1.平移直线使之过原点:⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡=10
3/71
001
1T
()f f f f y x T y x --=⎪⎪⎪⎭⎫ ⎝⎛--,1001001()θθθθθ
R =⎪⎪⎪⎭
⎫ ⎝⎛-1000cos sin 0sin cos ()f f f f y x T y x ,1001
00
1=⎪⎪⎪
⎭
⎫ ⎝⎛()()f f f f y x T R y x T M --∙∙=,)(,θ
2.旋转直线a 度,使之与x 轴重合:⎥⎥⎥⎦
⎤
⎢⎢⎢⎣⎡-=1000cos sin 0sin cos 1a a a a R ,a=-arctg
(2/3)
3.作关于x 轴的对称变换:⎥⎥
⎥⎦
⎤
⎢⎢⎢⎣⎡-=100010001x SY 4.旋转直线-a 度,即2之逆变换:⎥⎥
⎥⎦⎤
⎢⎢⎢⎣⎡-=1000cos sin 0sin cos 2a a a a R 5.平移直线过点(0,-7/3),即1之逆变换,⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡-=10
3/71
001
2T
最后,综合各矩阵为:1122T R SY R T M x =
四、分析综合题
1. 请写出能在屏幕上显示以下图形的OpenGL 语句段 (1)红色的大小为4像素的点:P 1(1,8),P 2(2,5),P 3(5,10);
glColor3f(1.0,0.0,0.0);
glPointSize(4.0f); glBegin(GL_POINTS); glVertex2i (1,8);
glVertex2i (2,5); glVertex2i (5,10);
glEnd();
(2)黑色的实折线(线宽3像素):P 1(1,1,3)P 2(2,7,2)P 3(7,12,4);
glColor3f(0.0,0.0,0.0);
glLineWidth (3.0f); glBegin(GL_LINES); glVertex3i (1,1,3); 或
glVertex3i (2,7,2); glVertex3i (2,7,2); glVertex3i (7,12,4);
glEnd();
glColor3f(0.0,0.0,0.0);
glLineWidth (3.0f); glBegin(GL_LINE_STRIP); glVertex3i (1,1,3);
glVertex3i (2,7,2); glVertex3i (7,12,4);
glEnd();
(3)设函数DrawCube()作用为绘制边长为1、中心在原点且长宽高方向分别与三坐标轴平行的立方体,请利用之绘制一场景,场景中有两个中心分别在(2,4,