计算机图形学-习题库
计算机科学技术:计算机图形学题库三

计算机科学技术:计算机图形学题库三1、名词解释扫描转换答案:在矢量图形中,多边形用顶点序列来表示,为了在光栅显示器或打印机等设备上显示多边形,必须把它转换为点阵表示。
这种转换称为扫描转换。
2、单选下面对光栅扫描图形显示器描述正确的是()A.荧光粉涂层均匀离散分布;B.是一种点画设备;C.电子束从顶到底扫描;D.通过控制电子束的强弱实现色彩的强弱;答案:A3、填空题计算机图形系统由()系统和软件系统组成。
答案:硬件4、填空题在处理图形时常常涉及的坐标系有模型坐标系(),世界坐标系,观察坐标系,设备坐标系。
答案:局部坐标系5、单选计算机图形学与计算机图象学的关系是()。
A.计算机图形学是基础,计算机图象学是其发展B.不同的学科,研究对象和数学基础都不同,但它们之间也有可转换部分C.同一学科在不同场合的不同称呼而已D.完全不同的学科,两者毫不相干答案:B6、问答题简述中点分割法进行裁剪的过程?答案:中点分割剪取法,主要是对线段不断地进行对分,并排除在区域外的部分,找出线段落在窗口内的部分。
其方法主要是通过求出离线段的一个端点最近并且在区域内的点的方法,来确定线段落在窗口内的端点。
7、问答题局部光照模型和全局光照模型的不同之处是什么?答案:局部光照模型主要是考虑光源发出的光对物体的直接影响。
另外,全局光照模型除了处理光源发出的光之外,还考虑其他辅助光的影响,如光线穿过透明或半透明物体,以及光线从一个物体表面反射到另一个表面等。
8、判断题彩色阴极射线管主要是由红绿蓝三个彩色电子束的亮度不同,进而组合形成各种色彩的。
答案:错9、问答题什么叫做走样?什么叫做反走样?反走样技术包括那些?答案:走样指的是用离散量表示连续量引起的失真。
为了提高图形的显示质量。
需要减少或消除因走样带来的阶梯形或闪烁效果,用于减少或消除这种效果的方法称为反走样。
其方法是①前滤波,以较高的分辨率显示对象;②后滤波,即加权区域取样,在高于显示分辨率的较高分辨率下用点取样方法计算,然后对几个像素的属性进行平均得到较低分辨率下的像素属性。
计算机图形学期末考试试题及答案

计算机图形学期末考试试题及答案一、选择题(每题2分,共20分)1. 计算机图形学是研究计算机生成和处理图形信息的学科,以下哪项不是计算机图形学的研究内容?A. 图形表示和存储B. 图形输入和输出C. 图形变换D. 数据库管理答案:D2. 以下哪种图形设备不是常见的图形输入设备?A. 鼠标B. 扫描仪C. 数字化仪D. 打印机答案:D3. 在计算机图形学中,以下哪种算法用于消除隐藏面?A. 罗伯特算法B. 画家算法C. 深度排序算法D. 光照模型答案:C4. 在计算机图形学中,以下哪个概念表示颜色空间的一个点?A. RGBB. HSLC. HSVD. 所有以上选项答案:D5. 在三维图形变换中,以下哪种变换不能保持图形的形状和大小不变?A. 平移B. 旋转C. 缩放D. 错切答案:D6. 在计算机图形学中,以下哪种方法用于实现抗锯齿效果?A. 插值B. 卷积C. 重采样D. 双线性插值答案:C7. 在计算机图形学中,以下哪种技术用于模拟光线传播和反射?A. 光照模型B. 光线追踪C. 阴影算法D. 纹理映射答案:B8. 在计算机图形学中,以下哪种图形表示方法基于图像?A. 向量图形B. 位图图形C. 分形图形D. 隐函数图形答案:B9. 在计算机图形学中,以下哪种技术用于生成动态图形?A. 动态扫描B. 动态纹理映射C. 动态建模D. 动态渲染答案:D10. 在计算机图形学中,以下哪种技术用于实现虚拟现实?A. 三维建模B. 虚拟现实引擎C. 头戴式显示器D. 所有以上选项答案:D二、填空题(每题2分,共20分)1. 计算机图形学的基本研究内容包括:图形表示和存储、图形输入和输出、图形变换、图形显示和图形交互。
2. 常见的图形输入设备有:鼠标、扫描仪、数字化仪、触摸屏等。
3. 常见的图形输出设备有:显示器、打印机、绘图仪等。
4. 在计算机图形学中,RGB表示红绿蓝三原色,用于描述颜色的空间。
5. 在三维图形变换中,常见的变换包括:平移、旋转、缩放、错切等。
《计算机图形学》试题-B卷及参考答案

所以:P(t)= (P0+4P1+P2)/6+(-P0+P2)t/2+(P0-2P1+P2)t2/2+ (-P0+3P1-3P2+P3)t3/6 写成分量式为: X(t)= (X0+4X1+X2)/6+(-X0+X2)t/2+(X0-2X1+X2)t2/2+ (-X0+3X1-3X2+X3)t3/6 Y(t)= (Y0+4Y1+Y2)/6+(-Y0+Y2)t/2+(Y0-2Y1+Y2)t2/2+ (-Y0+3Y1-3Y2+Y3)t3/6 将 P0(1,1)、P1(2,3)、P2(4,3)、P3(3,1)代入上述参数曲线得: X(t)=13/6+t/2+t2/2+2t3/3 Y(t)=-t2+t+8/3 将 t 等于 0、1/3、1/2、1 代入上述方程得: P(0)=(13/6,8/3) P(1/3)=(391/162,10/9) P(1/2)=(21/8,35/12) P(1)=(23/6,8/3)
t∈[0,1],k = 0, 1, 2, …, n 解题思路: 根据 B 样条曲线的定义式,三次 B 样条曲线为: P( t )=F0,3(t)•B0+F1,3(t)•B1+F2,3(t)•B2+F3,3(t)•B3 1 F0,3 (t ) (t 3 3t 2 3t 1) 因为: 6 1 3 F1,3 (t ) (3t 6t 2 4) 6 1 F2,3 (t ) (3t 3 3t 2 3t 1) 6 1 F3,3 (t ) t 3 6 t∈[0,1]
计算机图形学考试试题及答案

计算机图形学考试试题及答案一、选择题1. 下列关于计算机图形学的描述中,错误的是:A. 计算机图形学是研究如何有效地生成、处理和显示图像的学科。
B. 计算机图形学可以应用于游戏开发、虚拟现实、动画制作等领域。
C. 计算机图形学的基础是绘画和几何学。
D. 计算机图形学不涉及数字图像处理和计算机视觉。
2. 下列哪个算法用于绘制三维图形中的曲线和曲面?A. Bresenham算法B. Bezier曲线算法C. DDA直线绘制算法D. Cohen-Sutherland算法3. 下列哪个变换矩阵用于实现平移操作?A. 缩放矩阵B. 旋转矩阵C. 平移矩阵D. 投影矩阵4. 在光栅化过程中,下列哪个步骤不是必需的?A. 三角形剖分B. 顶点着色C. 法向量计算D. 光照模型计算5. 下列哪个算法用于实现隐藏面消除?A. DDA算法B. Bresenham算法C. Z-buffer算法D. Bezier曲线算法二、填空题1. 在计算机图形学中,RGB表示红、绿、蓝三原色,而CMYK表示青、洋红、黄、黑四原色。
其中,RGB颜色模型中的最大亮度为______,而CMYK颜色模型中的最大亮度为______。
2. 给定一个二维平面上的点P,坐标为(x,y),经过平移变换后得到新的点P',平移矩阵表示为T,若T=[1 0 a; 0 1 b; 0 0 1],则点P'的坐标为(x', y') = (______, ______)。
3. 在计算机图形学中,三维物体的旋转变换通常使用欧拉角或四元数表示。
若分别使用ZYZ和XYZ欧拉角顺序进行旋转,最终得到的物体姿态可能会有差异,这被称为______问题。
三、简答题1. 简要描述计算机图形学的基本原理和应用领域。
2. 什么是光线追踪技术?它在哪些领域得到了广泛应用?3. 简要解释什么是纹理映射(Texture Mapping),并举例说明其在计算机图形学中的应用。
计算机图形学题

一.单项选择题1.以下对DDA算法及Bresenham算法的描述中,错误的选项是〔 B 〕〔A〕DDA算法的本质是用数值方法解微分方程〔数值微分法〕。
〔B〕DDA算法效率低,但利于硬件实现。
〔C〕Bresenham算法只有加法和乘2计算,效率高。
〔D〕Bresenham算法的基本思想是借助于一个决策变量d的正负符号,来确定下一个该亮点的象素点。
2.以下对圆弧的生成算法中,可能造成所产生的圆是不封闭的算法是〔B 〕〔A〕扫描法〔B〕DDA算法〔C〕Bresenham算法〔D〕正负法3.电脑图形学与计算几何之间的关系是( B )(A〕学术上的同义词(B〕电脑图形学以计算几何为理论基础(C〕计算几何是电脑图形学的前身(D〕两门毫不相干的学科4. 对直线的扫描转换算法中,以下说法正确的选项是〔A 〕〔A〕Bresenham算法主要是通过借助于一个决策变量d的正负符号,来确定下一个该亮点的象素点。
〔B〕Bresenham算法中决策变量的计算式与上一次决策变量的正负无关。
〔C〕DDA算法主要利用整数进行计算,其效率较高。
〔D〕DDA算法不需要计算直线的斜率,但Bresenham算法需要。
5. 用中点法画线时,对坐标点P〔xi,yi〕,对M〔xi+1,yi+0.5〕有di=F(M)=F(xi+1, yi+0.5)<0,此时下一个象素应选择〔 C 〕〔A〕P1(xi+1,yi) (B)P2(xi,yi+1) (C)P3(xi+1,yi+1) (D)P4(xi,yi)6.对简单种子填充算法,其算法原理是将种子像素入栈,当栈非空时,将执行以下三个步骤:〔1〕栈顶像素点A出栈。
〔2〕按某一顺序查出与A相邻的4个像素,假设其中某个像素还是区域中原有颜色,或不为边界,则将该像素入栈。
〔3〕将A置成填充色。
其正确步骤为〔B 〕〔A〕〔1〕->〔2〕->〔3〕〔B〕〔1〕->〔3〕->〔2〕〔C〕〔2〕->〔3〕->〔1〕〔D〕〔3〕->〔2〕->〔1〕7.曲线分为规则曲线和自由曲线,以下为自由曲线的是〔 D 〕〔A〕渐开线〔B〕双曲线〔C〕双曲线〔D〕等高线8. 以下有关Bezier曲线性质的表达语句中,错误的结论为〔D 〕〔A〕Bezier曲线可用其特征多边形来定义。
《计算机图形学》练习试题及参考答案

《计算机图形学》练习试题及参考答案一、选择题1.计算机图形学的研究对象是图形的表示、存储、( )和转换。
A.生成B.显示C.打印D.传输参考答案:B2.在计算机中,图形信息通常以( )形式存储A.数组B.字符串C.树状D.图形块参考答案:A3.下列哪个不属于计算机图形学的应用领域?A.计算机辅助设计B.虚拟现实C.办公自动化D.计算机艺术参考答案:C4.在计算机图形学中,( )是指将一个图形按照一定的比例和方向变换到新的位置。
A.缩放B.平移C.旋转D.镜像参考答案:B5.以下哪个不属于基本的图形变换?A.缩放B.旋转C.剪切D.反射参考答案:C6.在计算机图形学中,( )是指在图形上按照一定的方式进行填充。
A.着色B.填充C.描绘D.渲染参考答案:B7.在计算机图形学中,( )是指将一个图形分解成多个小三角形的过程。
A.细分B.纹理映射C.光照D.阴影参考答案:A8.以下哪个不属于计算机图形学的主要任务?A.图形设计B.图形输入C.图形输出D.图形处理参考答案:A9.在计算机图形学中,( )是指将图形按照一定的方式进行着色。
A.着色器B.渲染器C.显示器D.输入器参考答案:A10.在计算机图形学中,( )是指在图形上施加光照和材质,以产生真实感的效果。
A.渲染B.着色C.细化D.纹理映射参考答案:A二、填空题1.计算机图形学是研究图形的表示、存储、______、______和转换的学科。
参考答案:生成、显示2.在计算机中,图形信息通常以______形式存储。
参考答案:数组3.______是指将一个图形按照一定的比例和方向变换到新的位置。
参考答案:平移4.在计算机图形学中,______是指在图形上按照一定的方式进行填充。
参考答案:填充5.在计算机图形学中,______是指将一个图形分解成多个小三角形的过程。
参考答案:细分6.______是指将图形按照一定的方式进行着色。
参考答案:着色器7.______是指在图形上施加光照和材质,以产生真实感的效果。
《计算机图形学》题集

《计算机图形学》题集一、选择题(每题2分,共20分)1.计算机图形学主要研究的是:A. 计算机硬件的设计B. 计算机软件的开发C. 图像的生成、处理与显示D. 计算机网络技术2.下列哪个不是计算机图形学的应用领域?A. 游戏开发B. 医学影像处理C. 文字编辑D. 三维动画制作3.在计算机图形学中,像素(Pixel)是:A. 图像的最小单位B. 显示器的大小C. 图像的分辨率D. 图像的颜色深度4.下列哪个是光栅图形显示器的特点?A. 直接使用矢量数据表示图像B. 图像由像素阵列组成C. 分辨率固定不变D. 不适用于动态图像显示5.在三维图形变换中,平移变换不会改变物体的:A. 形状B. 大小C. 方向D. 位置6.下列哪个算法常用于三维图形的消隐处理?A. 光线追踪算法B. Z-Buffer算法C. 纹理映射算法D. 反走样算法7.在计算机图形学中,下列哪个术语用于描述物体表面的明暗程度?A. 色彩B. 光照模型C. 纹理D. 透明度8.下列哪个不是计算机图形学中的基本图形生成算法?A. 中点画线算法B. Bresenham画圆算法C. 扫描线填充算法D. Cohen-Sutherland线段裁剪算法9.在计算机图形学中,下列哪个概念用于描述物体的三维形状?A. 像素B. 几何模型C. 色彩模型D. 光照模型10.下列哪个不是真实感图形生成的基本步骤?A. 几何建模B. 光照模型计算C. 纹理映射D. 数据压缩二、填空题(每题2分,共14分)1.计算机图形学中的“图形”主要分为两大类:和。
2.在三维图形变换中,旋转变换可以使用______矩阵来实现。
3.在计算机图形学中,______是指使用数学方法来模拟真实世界中光线与物体表面的相互作用。
4.在进行三维图形的消隐处理时,______算法是一种常用的方法,它通过维护一个深度缓冲区来实现。
5.在计算机图形学中,______是一种常用的图像滤波技术,可以用于图像的平滑处理。
计算机图形学-习题库及答案

1、计算机图形显示器和绘图设备表示颜色的方法各是什么颜色系统?它们之间的关系如何?1、计算机图形显示器是用RGB方法表示颜色,而绘图设备是用CMY方法来表示颜色的。
它们之间的关系是:两者都是面向硬件的颜色系统,前者是增性原色系统,后者是减性原色系统,后者是通过在黑色里加入一种什么颜色来定义一种颜色,而后者是通过指定从白色里减去一种什么颜色来定义一种颜色2、简述帧缓存与显示器分辨率的关系。
分辨率分别为640×480,1280×1024,和2560×2048的显示器各需要多少字节位平面数为24的帧缓存?2、帧缓存的大小和显示器分辨率之间的关系是:帧缓存的大小=显示器分辨率的大小*帧缓存的3、画直线的算法有哪几种?画圆弧的算法有哪几种?c1)逐点比较法;(2)数值微分法;(3)Bresenham算法。
画弧线的常用方法有:(1)逐点比较法;(2)角度DDA法;(3)Bresenham算法。
4、分别写出平移、旋转、缩放及其组合的变换矩阵。
4、1)平移变换:其中, , , 是物体在三个坐标方向上的位移量。
2)旋转变换:绕Z轴旋转的公式为:绕X轴旋转的公式为:绕Y轴旋转的公式为:如果旋转所绕的轴不是坐标轴,设其为任意两点p1,p2所定义的矢量,旋转角度为。
则可由7个基本变换组合构成:1.使p1,点与原点重合;2.,使轴p1p2落入平面xoz内;3.,使p1p2与z轴重合;4.,执行绕p1p2轴的角旋转;5.,作3的逆变换;6.,作2的逆变换;7.作1的逆变换。
3)缩放变换:其中,,,是物体在三个方向上的比例变化量。
记为。
若对于某个非原点参考点进行固定点缩放变换,则通过如下的级联变换实现:5、如何用几何变换实现坐标系的变换?坐标系的变换,亦即将某一坐标系lcs1中的点变换为另一个坐标系lcs2下的坐标。
若,矩阵的推导分三步。
1)将lcs1中的点变换到世界坐标系的矩阵 ;x_axis, y_axis, z_axis 为lcs1中x,y,z轴矢量在世界坐标系的表示org为lcs1中原点在世界坐标系的表示2)将世界坐标系的点变换到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.zb = - y_axis.x * org.x - y_axis.y * org.y - y_axis.z * org.zc = - z_axis.x * org.x - z_axis.y * org.y - z_axis.z * org.z6、写出几种线裁剪算法;写出几种多边形裁剪算法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3、画直线的算法有哪几种?画圆弧的算法有哪几种?c1)逐点比较法;(2)数值微分法;(3)Bresenham算法。
画弧线的常用方法有:(1)逐点比较法;(2)角度DDA法;(3)Bresenham算法。
4、分别写出平移、旋转、缩放及其组合的变换矩阵。
1)平移变换:其中, , , 是物体在三个坐标方向上的位移量。
2)旋转变换:绕Z轴旋转的公式为:绕X轴旋转的公式为:绕Y轴旋转的公式为:如果旋转所绕的轴不是坐标轴,设其为任意两点p1,p2所定义的矢量,旋转角度为。
则可由7个基本变换组合构成:1.使p1,点与原点重合;2.,使轴p1p2落入平面xoz内;3.,使p1p2与z轴重合;4.,执行绕p1p2轴的角旋转;5.,作3的逆变换;6.,作2的逆变换;7.作1的逆变换。
3)缩放变换:其中,,,是物体在三个方向上的比例变化量。
记为。
若对于某个非原点参考点进行固定点缩放变换,则通过如下的级联变换实现:5、如何用几何变换实现坐标系的变换?坐标系的变换,亦即将某一坐标系lcs1中的点变换为另一个坐标系lcs2下的坐标。
若,矩阵的推导分三步。
1)将lcs1中的点变换到世界坐标系的矩阵 ;x_axis, y_axis, z_axis 为lcs1中x,y,z轴矢量在世界坐标系的表示org为lcs1中原点在世界坐标系的表示2)将世界坐标系的点变换到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.zb = - y_axis.x * org.x - y_axis.y * org.y - y_axis.z * org.zc = - z_axis.x * org.x - z_axis.y * org.y - z_axis.z * org.z6、写出几种线裁剪算法;写出几种多边形裁剪算法。
(1)、矢量裁剪法(2)、编码裁剪法(3)、中点分割裁剪法多边形的裁剪算法:(1)、逐边裁剪法(2)、双边裁剪法7、写出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多项式。
8、写出B样条的矩阵形式和调和函数。
为什么使用非均匀有理B样条?n+1个控制点 ,K阶(K-1次)B样条曲线的表达式是:其中是调和函数,按照递归公式可定义为:其中是节点值,是K阶B样条函数的节点矢量。
非均匀B样条函数的节点参数沿参数轴的分布是不等距的,近年来,它得到了广泛的发展和应用,主要原因是:(1).对标准的解析形状(如圆锥曲线,二次曲线,回转面等)和自由曲线,曲面提供了统一的数学表示,无论是解析形状还是自由格式的形状均有统一的表示参数,便于工程数据库的存取和应用。
(2).可通过控制点和权因子来灵活的改变形状。
3).对插入节点,修改,分割,几何插值等的处理工具比较有利。
(4).具有透视投影变换和仿射变换的不变性。
(5).非有理B样条,有理及非有理Bezier曲线,曲面是NURBS的特例表示。
9、简述边界表示法(BREP)实体构造表示法(CSG)。
边界表示法是用实体的表面来表示实体的形状,它的基本元素是面、边、顶点。
它以欧拉公式作为理论基础,要求实体的基本拓扑结构符合欧拉公式。
目前采用的比较多的数据结构是翼边数据结构和半边数据结构(又称对称数据结构)。
实体构造表示法的基本思想是将简单的实体(又称体素)通过集合运算组成所需要的物体。
其中,集合运算的实现过程由一棵二叉树来描述,二叉树的叶子节点表示体素或者几何变换的参数,非终端节点表示施加于其子结点的正则集合算子或几何变换的定义。
10、写出透视变换矩阵和各种投影(三视图、正轴测和斜投影)变换矩阵。
透视变换矩阵形式为:主视图:俯视图:侧视图:正轴测:斜投影:11、观察空间有哪些参数?其作用是什么?写出从物体空间坐标系到观察空间坐标系转换矩阵。
参数名称作用VRP 观察参考点确定观察坐标系原点VPN 观察平面法向确定观察平面法向VUP 观察正向确定观察平面上v轴的方向F 前截面距离确定前截面位置B 后截面距离确定后截面位置Pt 投影类型定义投影是平行投影还是透视投影PRP 投影参考点确定投影中心或投影方向Umin,Umax,Vmin,Vmax 观察窗口在观察平面上定义观察窗口从物体空间坐标系到观察空间坐标系的转换矩阵:12、分别写出对于透视投影和平行投影的从裁剪空间到规范化投影空间的转换矩阵。
平行投影:Tvcper=T3T4T5parT6par透视投影:Tvcper=T3T4T5per13、写出从规范化投影空间到图像空间的转换矩阵。
14、写出光线与几种常见物体面的求交算法。
假设光线射线定义为X=Dt+E (t>=0)其中,E=(e1,e2,e3)为射线起点,D=(d1,d2,d3)为射线方向,||D|| = 1,X=(x,y,z)为射线上任意点。
1)与多边形求交算法假设多边形所在的平面方程为ax+by+cz+d = 0把射线参数方程代入平面方程得到:t0 = - (N * K + d) / (N * D) (N*D<>0)当N*D = 0时,射线和多边形平行;当N*D<>0,交点为X0 = Dt0 + E。
这时,还要判断交点是否在多边形上。
判断时,只要把交点和多边形投影到某个坐标平面上判断即可。
2)与球面求交算法设球心在P0(x0,y0,z0),半径为r的球面方程为(P – P0) * (P – P0) = r * r代入射线方程,有at*t + bt + c = 0其中a = D*D,b = 2D *(E-P0),c = (E-P0) * (E-P0) – r * r当b*b-4ac<0时,无交点。
否则,射线与球面交于两点,由求根公式可以求出。
3)与柱面求交算法一个底面中心为P0,对称轴方向为AXIS,半径为r,高为h的圆柱定义如下:(P – P0) * (P- P0) – (AXIS * (P – P0)) * (AXIS * (P – P0)) – r * r <= 0AXIS * (P – P0) >= 0AXIS * (P – P0) <= 0其中,P1 = P0 + h * AXIS把射线方程代入第一式,并改为不等式,得到:at * t + 2bt + c = 0其中 a = 1 – (AXIS * D) * (AXIS * D)b = D * (E – P0) – (AXIS * D) X (AXIS * (E – P0))c = (E – P0) * (E – P0) – (AXIS * (E – P0)) – r * r当b * b –ac >= 0时,可以由求根公式求出解。
求出t以后,还要看是否满足后面两个不等式,才能决定是否在圆柱面上。
15简述消隐算法的分类。
根据消隐空间的不同,消隐算法可分为两类:(1)物体空间的消隐算法:物体空间是物体所在的空间,即规范化投影空间。
这类算法是将物体表面上的K个多边形中的每一个面与其余的K-1个面进行比较,精确求出物体上每条边或每个面的遮挡关系。
计算量正比于K2。
(2)图象空间的消隐算法:图象空间就是屏幕坐标空间,这类算法对屏幕的每一象素进行判断,以决定物体上哪个多边形在该象素点上是可见的。
若屏幕上有m×n个象素点,物体表面上有K个多边形,则该类消隐算法计算量正比于mnk。
16、简述深度缓存算法及其特点。
深度缓存算法是一种典型的、也是最简单的图象空间的消隐算法。
在屏幕空间坐标系中,轴为观察方向,通过比较平行于轴的射线与物体表面交点的值(又称为深度值),用深度缓存数组记录下最小的值,并将对应点的颜色存入显示器的帧缓存。
深度缓存算法最大的优点是简单。
它在、、方向上都没有进行任何排序,也没有利用任何相关性。
算法复杂性正比于。
在屏幕大小,即一定的情况下,算法的计算量只与多边形个数成正比。
另一个优点是算法便于硬件实现,并可以并行化。
17、简述点与多边形之间的包含性检测算法。
先将该点变换到多边形所在平面,在二维空间讨论该问题,过该点沿任意方向做一条射线,与多边形边界求交点,若交点个数为偶数,0,2,4,…,则该点在多边形外部,否则在内部。
如果射线与多边形某条边、某个顶点重合,则可以改变射线方向重新测试。
18、描述扫描线算法。
扫描线算法如下:(1).对于每个多边形,根据多边形顶点的最小的y值,将多边形置入多边形Y桶。
(2).有效多边形表APT初始化为空,有效边表初始化为空。
(3).对每一条扫描线j,j从最小值1开始,做以下工作:颜色缓存CB置为背景色。
深度缓存ZB置为机器无穷大。
检查多边形Y桶中对应扫描线j的链中是否有新的多边形。
如有,则将新多边形加到有效多边形表APT中。
对于新添到有效多边形表中的多边形,生成对应的边Y桶。
对于有效多边形表APT中的每一个多边形,若其边Y桶中对应扫描线j有新的边,则将新边配对加入到有效边表AET中。
对于有效边表AET中的第一个边对,计算起止x坐标间点的z值,与ZB中对应值比较,若小,在更新ZB的值,并将该点颜色值存入CB。
将CB的内容写入显示器帧缓存的第j行。
检查有效多边形表APT中的个多边形,若多边形顶点的最大Y坐标已等于j,则从APT中删去多边形,释放对应的边Y桶的空间,并从有效边表AET中删去属于该多边形的所有边对。
检查有效边表AET的每一边对,调整相应的起止x坐标,和z值。
19、简述几种阴影生成算法。
阴影生成算法主要分为如下几种:影域多边形方法:由于物体遮挡光源后在它们后面形成一个影域,所以确定某点是否落在阴影中只要判别该点是否位于影域即可。
曲面细节多边形方法:基于多边形区域分类的隐藏面消去算法,通过从光源和视点两次消隐生成阴影。
z缓冲器方法:该方法分为两部。
首先,利用z缓冲器消隐算法按光源方向对景物进行消隐。
在z缓冲器(阴影缓冲器)中记录离光源最近景物点的深度值。
第二部,采用z缓冲器消隐算法按视线方向计算画面。
将每一象素对应点变换到光源坐标系,并用变换后点的深度值与阴影缓冲器中的深度值比较,若阴影缓冲器中的深度值较小,则说明该点从光源方向不可见,位于阴影中。
光线跟踪方法:在光线跟踪算法中,要确定某点是否在某个光源的阴影内,只要从该点出发向光源发出一根测试光线即可。