您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 其它文档 > 计算机图形学-习题库
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的逆变换;16.,作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曲线和面片的几种表达形式。2空间给定的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样条函数的节点参数沿参数轴的分布是不等距的,近年来,它得到了广泛的发展和应用,主要原3因是:(1).对标准的解析形状(如圆锥曲线,二次曲线,回转面等)和自由曲线,曲面提供了统一的数学表示,无论是解析形状还是自由格式的形状均有统一的表示参数,便于工程数据库的存取和应用。(2).可通过控制点和权因子来灵活的改变形状。3).对插入节点,修改,分割,几何插值等的处理工具比较有利。(4).具有透视投影变换和仿射变换的不变性。(5).非有理B样条,有理及非有理Bezier曲线,曲面是NURBS的特例表示。9、简述边界表示法(BREP)实体构造表示法(CSG)。边界表示法是用实体的表面来表示实体的形状,它的基本元素是面、边、顶点。它以欧拉公式作为理论基础,要求实体的基本拓扑结构符合欧拉公式。目前采用的比较多的数据结构是翼边数据结构和半边数据结构(又称对称数据结构)。实体构造表示法的基本思想是将简单的实体(又称体素)通过集合运算组成所需要的物体。其中,集合运算的实现过程由一棵二叉树来描述,二叉树的叶子节点表示体素或者几何变换的参数,非终端节点表示施加于其子结点的正则集合算子或几何变换的定义。10、写出透视变换矩阵和各种投影(三视图、正轴测和斜投影)变换矩阵。透视变换矩阵形式为:主视图:俯视图:侧视图:正轴测:斜投影:11、观察空间有哪些参数?其作用是什么?写出从物体空间坐标系到观察空间坐标系转换矩阵。参数名称作用VRP观察参考点确定观察坐标系原点VPN观察平面法向确定观察平面法向VUP观察正向确定观察平面上v轴的方向4F前截面距离确定前截面位置B后截面距离确定后截面位置Pt投影类型定义投影是平行投影还是透视投影PRP投影参考点确定投影中心或投影方向Umin,Umax,Vmin,Vmax观察窗口在观察平面上定义观察窗口从物体空间坐标系到观察空间坐标系的转换矩阵:12、分别写出对于透视投影和平行投影的从裁剪空间到规范化投影空间的转换矩阵。平行投影:Tvcper=T3T4T5parT6par5透视投影: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*D0)当N*D=0时,射线和多边形平行;当N*D0,交点为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-4ac0时,无交点。否则,射线与球面交于两点,由求根公式可以求出。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个多边6形,则该类消隐算法计算量正比于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缓冲器消隐算法按视线方向计算画面。将每一象素对应点变换到光源坐标系,并用变换后点的深度值与阴影缓冲器中的深度值比较,若阴影缓冲器中的深度值较小,则说明该点从光源方向不可见,位于阴影中。光线跟踪方法:在光线跟踪算法中,要确定某点是否在某个光源的阴影内,只要从该点出发向光源发出一根测试光线即可。若测试光线在到达给定光源前,先与其它景物相交,在该点位于给定光源的阴影中,否7则受到该光源的直接照射。20、试描述您所熟悉的计算机图形系统的硬软件环境。计算机图形系统是计算机硬件、图形输入输出设备、计算机系统软件和图形软件的集合。例如:计算机硬件采用PC、操作系统采用windows2000,图形输入设备有键盘、鼠标、光笔、触摸屏等,图形输出设备有CRT、LCD等,安装3DMAX图形软件。21、图形硬件设备主要包括哪些?请按类别举出典型的物理设备?图形输入设备:鼠标、光笔、触摸屏和坐标数字化仪,以及图形扫描仪等。图形显示设备:CRT、液晶显示器(LCD)等。图形绘制设备:打印机、绘图仪等。图形处理器:GPU(图形处理单元)、图形加速卡等等。22、为什么要制定图形软件标准?可分为哪两类?为了提高计算机图形软件、计算机图形的应用软件以及相关软件的编程人员在不同计算机和图形设备之间的可移植性。图形软件标准通常是指图形系统及其相关应用系统中各界面之间进行数据传送和通信的接口标准,另外还有供图形应用程序调用的子程序功能及其格式标准。23、请列举出当前已成为国际标准的几种图形软件标准,并简述其主要功能。(1)CGI(ComputerGraphicsInterface),它所提供的主要功能集包括控制功能集、独立于设备的图形对象输出功能集、图段功能集、输入和应答功能集以及产生、修改、检索和显示以像素数据形式存储的光栅功能集。(2)GKS(GraphcisKernelSystem),提供了应用程序和图形输入输出设备之间的接口,包括一系列交互和非交互式图形设备的全部图形处理功能。主要功能如下:控制功能、输入输出功能、变换功能、图段功能、询问功能等。24、试列举计算机图形学的三个应用实例。(1)CAD/CAM(2)VISC(3)VR.25、在图形设备上如何输出一个点?为输出一条任意斜率的直线,一般受到
本文标题:计算机图形学-习题库
链接地址:https://www.777doc.com/doc-2042276 .html