好文档 - 专业文书写作范文服务资料分享网站

计算机图形学复习题

天下 分享 时间: 加入收藏 我要投稿 点赞

6写出光线与几种常见物体的表面的求交算法。 假设光射线定义为X?Dt?E(t??0)

E?(e1,e2,e3)为射线起点,D?(d1,d2,d3)为射线方向,X?(x,y,z)为射线上任一点。

(1) 与多边形求交

ax?by?cz?d?0 N*k?d?t0??(N*D?0)N*D交点x0?Dt0?E,这时还要判断交点是否在多边形上,只要把交点和多边形投影

到某个坐标平面内上判断即可;

当N*D?0时,射线与多边形平行。

(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,高hY圆柱

(P?P0)2?(AXIS*(P?P0))2?r2?0AXIS*(P?P0)?0AXIS*(P?P0)?0其中

P1?P0?h*AXIS?a?1?(AXIS*D)2

b?D*(E?P0)?(AXIS*D)*(AXIS*(E?P0))c?(E?P0)2?(AXIS*(E?P0))?r22当b?4ac?0时,由求根公式求解

求出t后,还要看是否满足了后面两个不等式,才能决定是否在柱面上。

7简述消隐算法的分类。

(1) 物体空间的消隐,物体空间是物体所在空间,即光见范化投影空间,这类算法是将

物体表面上的K个多边形中的每个面与其余K-1个面进行比较,精确求出物体上每条变或每个面的遮挡关系,计算量正比与k2。

(2) 图像空间消隐,即屏幕坐标空间,这类算法对屏幕的每一像素进行判断,以决定物

体上哪个多边形在该像素点上是可见的。若屏上有m*n个像素点,物体表面上有k个多边形,在该类消隐算法计算量正比与mnk。

8简述深度缓存算法及其特点。

深度缓存算法是一种典型的,最简单的空间图像的消隐算法。在屏幕空间坐标系中,Z轴为观察方向,通过比较平行于Z轴的射线与物体表面交点的z值(又称深度值),用深度缓存数组记录下的最小z值,并将对应点的颜色存入显示器的帧缓存。

深度缓存算法最大优点是简单,它在X,Y,Z方向上都没有进行任何排序,也没有利用任何相关性。算法复杂度正比于m*n*N,在屏幕大小m*n一定的情况下,算法的计算量只与多边形个数N成正比。

另一个优点是算法便于硬件实现并可以并行化。

9简述点与多边形之间的包含性检测算法。 先将该点变换到多边形所在平面,在二维空间讨论该问题,过该点沿任何方向做一条射线与多边形边界求交点,若交点个数为偶数,则该点在多边形外部,否则在内部。如果射线与多边形某边,某顶点重合,则可以改变射线方向重新测试。

10描述扫描线算法。

(1) 对于每个多边形,根据顶点最小值y,将多边形置入多边形y桶,求ymax,按ymin

大小排序,建立活性多边形表,包括与当前扫面线相交的多边形。

(2) 从上到下依次对每条扫描线进行消隐处理,对扫面以上的点置初值,Z(x)取其中

的最大值,I(x)取背景色。

(3) 对每条扫描线y,根据活性多边形表找出所有与当前扫描线相交的多边形,对每个

火星多边形,求出扫描线在此多边形内的部分,对这些部分中的每个像素x计算多边形在此处的z值,若z值小于Z(X),则置Z(X)为z,I(X)为颜色值。

(4) 当扫描线对活性多边形表中的所有多边形都处理完毕后,所得的I(X)即为显示颜色,

可进行显示并对下一条扫描线进行处理,即y=y+1。此时,应更新活性多边形表,将已完全处于扫描线下方的多边形(ymax

第八章

3下列关于Bezier曲线的性质,哪个是正确的?

(1) 在起点和终点处的切线方向和控制多边形第一条边的方向一致; (2) 在端点处R阶导数,仅与R个相邻控制顶点有关; (3) 若保持原全部顶点的位置不变,只是把次序颠倒过来,则新的Bezier曲线形状不变,

但方向相反;

(4) 曲线的形状既与控制顶点的位置有关,同时依赖于坐标系的选择。 正确 错误

正确Bezier曲线的对称性

错误 由于几何不变形,其不依赖坐标系选择。

计算机图形学复习题

6写出光线与几种常见物体的表面的求交算法。假设光射线定义为X?Dt?E(t??0)E?(e1,e2,e3)为射线起点,D?(d1,d2,d3)为射线方向,X?(x,y,z)为射线上任一点。(1)与多边形求交ax?by?cz?d?0N*k?d?t0??(N*D?0)N*D交点x0?Dt0?E,这时还要判断交点是否在多边形上,只要把交点和多边
推荐度:
点击下载文档文档为doc格式
3x8xq3145h6zh7s4eqk6667gj1yjjc01ceb
领取福利

微信扫码领取福利

微信扫码分享