第六节 区域分割算法
     
      区域分割算法将投影平面分割成区域,考察区域内的图象。如果容易决定在这个区域内某些多边形是可见的,那么就可以显示那些可见的多边形,完成对这一区域的显示任务。否则,就将区域再分割成小的区域,对小的区域递归地进行判断。由于区域逐渐变小,在每个区域内的多边形逐渐变小,最终总可以判定哪些多边形是可见的。这个算法利用的区域的相关性,这种相关性是指位于适当大小的区域内的所有象素,表示的其实是同一个表面。
    在递归分割的每一步,要显示客体中每个多边形的投影多边形与所考察区域之间的关系,必然是下列四种之一:
    1.包围的多边形,即多边形全部包含了所考察的区域。
    2.相交的多边形,即多边形所考察的区域相交。
    3.被包含的多边形,即多边形全部在所考察的区域之内。
    4.分离的多边形,即多边形与所考察的区域完全分离。

    

    若区域与多边形为下面的四种情况,不必再做进一步的分割,可直接绘制。
    1.所有的多边形与区域分离,所以在区域内只需显示背景值。
    2. 只有一个相交的多边形,或者只有一个被包含的多边形。这时可以对区域首先填充背景值,然后对多边形进行扫描转换。在某些显示设备上,将整个帧缓冲存储器都初始化为背景值,可能更为方便。对于相交的多边形,只是被包含的部分被扫描转换。
    3.只有一个包围的多边形,无其它的多边形。整个区域填充该多边形的象素值。
 
   
 
  第一节 线面比较法消除隐藏线
第二节 曲面隐藏线消除的浮动水平线算法
第三节 深度排序算法
第四节 z-缓冲算法 第五节 扫描线算法
第六节 区域分割算法
 
 
上一页 | 下一页