消隐处理 单个凸多面体的消隐处理 。基本思路 ● 凸多面体是由多个凸平面多边形包围而成,其 消隐处理就是判别形体各面的可见性。 ●判别方法 。矢量计算法:利用平面法矢的指向判别面的可见 性; 平面顶点序列确定法:利用平面上顶点序列的绕向 判别面的可见性
消隐处理 单个凸多面体的消隐处理 基本思路 凸多面体是由多个凸平面多边形包围而成,其 消隐处理就是判别形体各面的可见性。 判别方法 z 矢量计算法:利用平面法矢的指向判别面的可见 性; z 平面顶点序列确定法:利用平面上顶点序列的绕向 判别面的可见性
矢量计算法 对于单个凸多面体,可利用每个平面对应的面法矢和观 察方向矢量1,判断平面的可见性: ●确定面法矢n 。n-垂直相应平面、指向平面外的矢量; P(Xp,Yp,Z 。n可由顶点坐标求出: X1,Y1,Z1) 。顶点1,2之间矢量为u; 。顶点1,3之间矢量为V: 3 n=uXV 5X5,Y5,Z5)
矢量计算法 对于单个凸多面体,可利用每个平面对应的面法矢 n 和观 察方向矢量 l ,判断平面的可见性: 确定面法矢 n z n - 垂直相应平面、指向平面外的矢量; z n可由顶点坐标求出: z 顶点1, 2之间矢量为u ; z 顶点1, 3之间矢量为v ; n=u×v φ φ n v u l l P (Xp,Yp,Zp 2 1 3 4 (X1,Y1,Z1) 5 (X5,Y5,Z5)
e氵 观测方向矢量1 ·I-是通过观察点P,通过面法矢起点的矢量 ·1为两点的坐标之差。 。n,/之间的夹角 n.l P(Xp,Yp,Zp) arccos X1,Y1,Z1) n 2 5X5,Y5,Z5
观测方向矢量 l z l -是通过观察点P,通过面法矢起点的矢量; z l 为两点的坐标之差。 n , l 之间的夹角 n l n l ⋅ ⋅ φ = arccos φ φ n v u l l P (Xp,Yp,Zp) 2 1 3 4 (X1,Y1,Z1) 5 (X5,Y5,Z5)
判断 ■从式中可见,不必计算夹角的数值,只需判断, 1的符号 0°≤≤90(n·1>0),为可见面 90°<中≤180(n1<0),为不可见面 P(Xp,Yp,Zp) X1,Y1,Z1) 2 5X5,Y5,Z5
,为不可见面 ,为可见面 90 180 ( 0) 0 90 ( 0) ° < ≤ ° ⋅ < ° ≤ ≤ ° ⋅ > n l n l φ φ 判断 从式中可见,不必计算夹角的数值,只需判断n, l 的符号 φ φ n v u l l P (Xp,Yp,Zp) 2 1 3 4 (X1,Y1,Z1) 5 (X5,Y5,Z5)
消隐处理 多个平面体的消隐处理 多个凸多面体 ●物体空间法:在三维空间内进行所有可见性判别: ● 图象空间法:以投影物体的显示平面为依据,进行可见 性判别; 优先级法:先按由视点观察多面体和多边形的能见度给 出优先级,然后将这些多面体和多边形按优先级的高 低,在显示面上边显示,边消隐。 ● 多个凹多面体 ·将其分割成多个凸多面体,再按多个凸多面体进行处 理。 ●多个一般平面体消隐算法流程
消隐处理 多个平面体的消隐处理 多个凸多面体 z 物体空间法:在三维空间内进行所有可见性判别; z 图象空间法:以投影物体的显示平面为依据,进行可见 性判别; z 优先级法:先按由视点观察多面体和多边形的能见度给 出优先级,然后将这些多面体和多边形按优先级的高 低,在显示面上边显示,边消隐。 多个凹多面体 z 将其分割成多个凸多面体,再按多个凸多面体进行处 理。 多个一般平面体消隐算法流程