图形学与可视化计算复习题20141 简述计算机图形学的含义计算机图形学是利用计算机研究图形的表示、生成、处理和显示的学科。
2 计算机图形主要分哪两类?线框图与真实感图形各有什么特点?图形主要分为两类,一类是由线条组成的图形,如工程图、等高线地图、曲面的线框图等,另一类是类似于照片的明暗图(Shading),也就是通常所说的真实感图形。
3 简述科学计算可视化的含义科学计算可视化是指运用计算机图形学和图像处理技术,将科学计算过程中或计算结果的数据转换为图形或图像在屏幕上显示出来并进行交互处理的理论、方法和技术。
4 三维数据可视化有哪几类主要的绘制方法?第一类是面绘制方法,首先由三维空间数据场构造出中间几何图元(如物体表面、等值面等),再由传统的计算机图形学技术实现面绘制第二类是体绘制方法,不需要构造中间几何图元,直接由三维数据生成屏幕上的二维图像,称为体绘制(Volume Rendering)算法,或称为直接体绘制(Direct Volume Rendering)方法第三类是混合绘制方法。
在可视化应用中,有时需要将几何形体与体数据场在一幅图像中混合显示,将面绘制和体绘制技术结合起来,如通过面绘制表现骨骼,而通过直接体绘制表现肌肉、血管等结构,称为混合绘制(Hydrid Rendering)。
5 光栅扫描显示器有什么特点?有什么优点和缺点?光栅扫描方式将需要显示的图形点阵分解成红、绿、蓝三基色,并将各像素对应的色彩编码储存在帧缓存器内,用来控制电子束在每一像素点的亮度,因而可在屏幕上产生一幅绚丽多彩的图像光栅扫描显示器则依靠帧缓存实现对屏幕图形的刷新。
光栅扫描显示器最突出的优点是:它不仅可以显示物体的轮廓线,而且可以对每一象素的灰度或色彩进行控制,能够进行面积填充,为真实感图形的显示提供了技术基础。
6 简述光栅图形的特点光栅图也叫做位图、点阵图、像素图,简单的说,就是最小单位由像素构成的图,只有点的信息.缩放时会失真。
每个像素有自己的颜色,7.简述图形学中光栅化的含义为了显示三角形的三条边,图形系统必须生成一组像素,使这组像素看起来像三角形的边线。
将几何形体的数据转换为像素在帧缓存里的位置和颜色的过程称为光栅化或扫描转换。
8 简述图形学中帧缓存的含义这里“帧”是指整个屏幕范围,该存储器保存一组对应于屏幕所有像素点的颜色值,电子束在屏幕上逐点移动时从帧缓存中取出对应的值,控制像素点的颜色和亮度。
9 屏幕坐标系的原点,x轴及y轴的方向一般是怎么规定的?10 屏幕上的图形坐标系(笛卡尔坐标系)的x轴及y轴的方向一般是怎么规定的?右手系的笛卡尔坐标系中给出对象的几何描述。
11 简述计算机图形学中建模坐标系、世界坐标系以及观察坐标系的基本概念以及它们之间的联系。
通常,在构造或显示一个场景的过程中会使用几个不同的笛卡尔坐标系。
为了建模的方便,首先在各自的坐标系统中构造每一个对象的形状,这些坐标系称为建模坐标系或局部坐标系。
指定了单个物体的形状后,就可以将所有对象放到一个统一的世界坐标系中,构造用户设定的场景,这一步涉及从各自的建模坐标系到统一的世界坐标系的变换。
如可以在各个独立的建模坐标系中分别定义自行车的零件(车轮、车架、坐垫、把手、齿轮、链条、踏板等),然后将这些零件在世界坐标系中装配起来。
也可以直接在世界坐标系中建立各对象的形状,从而跳过建模坐标和建模变换两步,但对复杂场景,建模过程会很复杂。
12 计算机图形学中基本图元一般包括哪些?包括字符串和几何单元,如点、直线、曲线、填充区域(通常为多边形)等13 OpenGL中所有几何图元最终都由顶点来描述,将每组顶点放在函数glBegin() 和glEnd()之间,由glBegin() 的参数来指定相应的几何图元,参数GL_POINTS、GL_LINES、GL_TRIANGLES各有什么含义?GL_POINTS 独立的点GL_LINES 一对顶点表示一条线段GL_TRIANGLES 三个顶点构成的三角形每相邻的两个两点组成一对,在该两点之间绘直线14 绝大多数OpenGL函数都遵循一种命名约定,解释函数glColor3f()中gl、Color、3及f的含义。
如glColor3f的根名称是Color,前缀gl表示gl函数库,后缀3f表示这个函数接受3个浮点类型的参数。
15直线段扫描转换的数字微分法中,当线段斜率的绝对值小于1或大于1时,扫描转换的方式有什么不同?为什么要这么做?注意上述分析的算法仅适用于|k|≤1的情形。
在此情况下,x每增加1,y至多增加1。
当 |k|>1时,必须把x,y的地位互换:Xi+1= xi+1/k该算法能在有限的线段长度内,根据斜率的不同合理确定尽可能多的像素来逼近该直线段。
16 直线段扫描转换的Bresenham算法中,当线段斜率的绝对值小于1或大于1时,扫描转换的方式有什么不同?为什么要这么做?斜率小于1的直线的扫描转换过程,沿线段路径的像素位置由以单位x间隔的采样来确定。
从给定线段的左端点(x0, y0)开始,逐步处理每个后继列(x位置),并在其扫描线y值最接近线段的像素上绘出一点。
当斜率大于1时,也必须把x,y的地位互换。
思路:固定直线的两个端点,控制总体误差。
17 简述凸多边形的扫描线填充算法扫描线填充算法的原理是:待填充区域按y方向(或x方向)扫描线的顺序,计算扫描线与多边形的相交区间,再用指定的颜色填充这些区间的像素,区间的端点可以通过计算扫描线与多边形边界的交点求得。
18 为什么图形系统一般将多边形限定为凸多边形,最简单的凸多边形是什么?对凹多边形的填充判断比较复杂。
对于凸多边形,扫描线填充过程可以简化,每一条扫描线与多边形至多有两个交点,可以使用坐标范围来确定哪些边与扫描线相交,当扫描线与单个顶点相交时,仅绘出该点本身,当有两个交点时,两交点之间的部分都是多边形内部的点。
19 一个多边形有几个面?OpenGL中下列函数定义了多边形的哪一种环绕方向为正向?glFlortFace (GL_CW); glFlortFace (GL_CCW)一个多边形有两个面,正面和背面。
顶点的指定次序以及排列方向称为环绕(winding)GL_CW定义顺时针环绕的多边形为正面,参数GL_CCW定义逆时针环绕的多边形为正面。
20 字符图元中的字体有哪两种表示方法?第一种称为位图字体(或光栅字体),每个字符都由一个二值形式的点阵图案表示。
第二种表示方法称为轮廓字体,又称笔画字体或向量字体。
每个字符的外形轮廓均由直线和曲线段来描述,21 什么是图形的走样?引起走样的原因是什么?图形光栅化的过程中由于图元的坐标点离散化为整数像素位置,因此光栅化后生成的图元具有锯齿形或阶梯状的外观。
当我们把对象的连续表示(无限的分辨率)变换为对象的离散表示时,不可避免地会出现这类误差,这种由于低频采样(不充分采样)而造成的图形失真称为走样(aliasing)。
22 图形的反走样主要有哪些方法?一种简单、直接的反走样方法,就是把屏幕看成由比实际更细的网格所覆盖,从而增加采样频率,然后根据这种更细网格,使用采样点来确定每个屏幕像素的合适亮度。
这种在高分辨率下对对象进行采样并在较低分辨率上显示其结果的技术称为过采样(supersampling),也称为后滤波(postfiltering)另一种方法是通过计算待显示的每个像素在对象上的覆盖区域来确定像素的亮度。
计算覆盖区域的反走样称为区域采样(area sampling),也称为前滤波(prefiltering)。
23 图形反走样中过采样方法的原理是什么?后滤波则首先从原始连续信号获取离散采样值,然后再用这些采样值计算像素值(在采样之后进行滤波)。
24 图形反走样中区域采样方法的原理是什么?前滤波就是在采样前对原始连续信号进行处理直接获取各个像素应有的亮度(在采样之前进行滤波) 。
25 图形学中几何变换与坐标变换的概念,两者有什么联系?第一种是物体相对于一个固定的坐标系进行变换,即对物体的每一个顶点进行变换,改变它的位置、大小或方向,称为几何变换。
第二种观点将物体看做固定不动,而坐标系则相对于物体做变换,称为坐标变换。
26 图形学中基本的几何变换包括哪些?平移、旋转、缩放。
26什么是齐次坐标,图形学中采用齐次坐标有什么优点?二维坐标(x, y)扩充为三维表示(xw, yw, w),称为齐次坐标,其中齐次参数w是一个非零值,利用齐次坐标,就可以用统一的矩阵相乘的形式来表示所有的几何变换,这27 下列变换矩阵哪个是平移变换?哪个是旋转变换;哪个是缩放变换?矩阵中个参数的含义?28 怎么由基本几何变换得到复合变换的合成矩阵?复合变换的结合是每次的变换矩阵相乘,即将多个基本变换进行串乘;29 写出两个连续的平移变换、旋转变换及平移变换的表达式X=(X’+x)cos()-(Y’+y)sin()Y=(X’+x)sin()+(Y’+y)sin()30 在二维图形变换中,若图形软件包仅提供绕坐标系原点的旋转函数时,绕任意基准点(xr , yr)的旋转可以通过哪几步复合变换来实现?写出复合变换矩阵的简要形式。
1、平移对象使基准点位置移动到坐标原点;2、绕坐标原点旋转;3、平移对象使基准点回到其原来的位置。
31 在二维图形变换中,若图形软件包仅提供相对于坐标系原点的缩放函数时,要实现相对于任意基准点(xf , yf)的缩放,可以通过哪几步复合变换来实现?写出复合变换矩阵的简要形式。
1、平移对象使固定点与坐标原点重合;2、相对于坐标原点进行缩放;3、平移对象使固定点返回到原来的位置。
32 对于二维图形变换,在xy坐标系中,有一个原点在(x0, y0)、方向角为的x y坐标系。
为了将对象描述从xy坐标系变换到x y坐标系,可以通过哪几步复合变换来实现?写出复合变换矩阵的简要形式。
(1) 将x'y'坐标系的原点(x0, y0)平移到xy 坐标系的原点(0, 0);(2) 将x'轴旋转到x 轴上。
33 三维平移变换的矩阵形式为:解释参数t x , t y , t z 的含义。
平移34 三维空间相对于坐标原点缩放变换的矩阵形式为:解释参数s x , s y , s z 的含义缩放比例35 OpenGL 中,函数glTranslate (tx, ty, tz)有什么功能,其参数有什么含义?平移变换函数。
函数名后缀*为参数类型,为f(浮点型)或d(双精度型)。
平移参数tx, ty, tz 可赋予任意实数,对于二维平移, tz =0;36 OpenGL 中,函数glRotate (theta, vx, vy, vz) 有什么功能,其参数有什么含义? 旋转变换函数。
需要设定经过坐标系原点的旋转轴的角度和方向,向量v=(vx, vy, vz)的分量可以是任意的浮点数。