内容发布更新时间 : 2024/11/14 12:24:58星期一 下面是文章的全部内容请认真阅读。
一.名词解释(18分)
1. 计算机图形学
计算机图形学是研究怎样用计算机表示、生成、处理和显示图形的一门学科
2. 象素图
点阵法列举图形中的所有点。用点阵法描述的图形称为像素图。
3. 参数图
参数法描述图形的形状参数和属性参数。用参数法描述的图形称为参数图
4. 齐次坐标
所谓齐次坐标就是将一个原本是n维的向量用一个n+1维向量来表示。
5. 平行投影
平行投影是在一束平行光线照射下形成的投影。平行投影的投影中心到投影面之家的距离是无限的。 6. 视口
将窗口映射到显示设备上的坐标区域称为视口。
二.判断正误(正确的打“T”,错误的打“F”)(22分)
( F )1.计算机图形生成的基本单位是线段; (像素)
( T )2.编码算法的核心思想是通过直线的端点进行编码来确定直线段与窗口的关系; ( F )3.对两直线求交时判断交点的有效性的条件是检查交点处直线的参数值是否>=1和<=0;
( F )4.若要将图形对某点进行比例、旋转变换,首先需要将坐标原点平移至该点,在新的坐标系下做比例或旋转变换,然后再将原点平移回去; ( F )5.CAGD是计算机辅助设计的缩写;
( T )6.在TC环境下编写的绘图程序要有图形初始化语句;
( T )7.多边形填充时,处理奇异点规则为:对于局部极值点,应看成两个点;对于非极值点,应看成一个点;
( T )8.中点分割算法的核心思想是通过二分逼近来确定直线段与窗口的交点; ( F )9.科学计算可视化不是计算机图形学的应用领域;
第 1 页 共 6 页
( F )10.交互式计算机绘图的概念是美国科学家Bezier在其博士论文中首次提出的。(Ivan)( T )11.直线的扫描转换,就是要找出显示平面上最佳逼近理想直线的那些象素的坐标值,并将这些象素置成所要求的颜色。
三.程序阅读题(20分)
1.下面为一绘图程序,内容不完整,请在右边将完整正确答案写出,并画图说明当用户输入”20”,”30”两个数后程序运行的结果。
#include
int main(void) { int i,xmax, ymax; setcolor(RED);
printf(\
scanf(\ for(i=1;i<5;i++)
line(0, 0, xmax*i, ymax); getch();
closegraph(); return 0; }
#include
line(0, 0, xmax*i, ymax);
}
getch();
closegraph(); return 0;
}
第 2 页 共 6 页
2.用下面Bresenham直线生成基本算法计算出从(0,0)到(4,4)线段的像素位置,并画图说明。 Bresenham() 答案: { 代入代码中运算就能得到如下点,格式什么的我不知道 int x,y,dx,dy,e,i; (0,0) (1,1) (2,2) (3,3) (4,4) dx=x2-x1; dy=y2-y1; e=-dx;
x=x1;y=y1;
for(i=0;i<=dx;i++) { setPoint(x,y); x++; e+=2*dy; if(e>=0) {
y++;
e=e-2*dx; } } }
四.计算题(20分)
1.求将下图中的空间四面体进行如下变换的变换矩阵,写出复合变换后图形各顶点的规范化其次坐标,并画出复合变换后的图形(12分)。
(1)关于点P整体放大2倍 (2)关于y轴进行对称变换
D(2,2,2) P(2,-2,2) C(0, 2,0)
A(2,0,0) B(2,2,0)
第 3 页 共 6 页