图2 V 点的星形邻域形式 定义3 设Star (V ) 中每个三角形的法向量为n i, 中心坐标为ci, 面积为A i, 那么由式 定义的法向量n 和中心c 构造的平面定义为V 点星形邻域的平均平面。 N = ΣniA i/ΣA i n =N/|N| c = ΣciA i/A I (1) 定义4 若Star (V ) 为半星形邻域, 则定义V点为边界点, 以V 点为顶点且不为邻域中三角形的公共边的2 条线段为与V 点相邻的2 条边界线段。 定义5 令Aj ( j = 1, 2, 3) 为三角形T i 的内角, 则三角形T i 的品质评价系数Ri 由式(2) 给定。Ri 越大, T i 的品质越好。Ri = (Σ3j= 1co sAj ) - 1 øRi ∈ [0, 1 ] (2) 定义6 在Sta r (V ) 中, 设有m 个顺次邻接的三角形组成集合{T iû j = 1, 2, ⋯,m }, 对于用户给定的某个误差值H, 若该集合的平均平面的单位法向量{nx , ny , nz } 与集合中每个三角形T j 的单位法向量(njx, njy, njz) 之间的夹角满足式(3) , 则称由该集合的三角形构成的多面体为点V 的一个同心超面。arcco s (njxõ nx + njyõ ny + njzõ nz ) ≤ H (3) 1. 2 网格简化原理 目前, 对复杂模型网格的简化达到既要保持网格形状不变, 又要使网格数量少的要求是非常困难的。本算法的基本思想是根据候选去除顶点的星形邻域的局部拓扑情况, 作出顶点取舍判断。若该邻域为一超平面, 说明该处较为平坦, 当该顶不为边界点时可以删除该点, 否则, 对与该顶点相邻的2 条边界线段进行拉直操作检查; 若该邻域存在2 个同心超平面, 说明该顶点处存在几乎位于同一直线上的2 条棱边, 可以进行折线拉平操作; 若该邻域存在3 个以上同心超平面, 说明该顶点曲率较大或为角点情况不应删除。由此给出2 条准则, 按照准则就可以对模型进行简化操作。 1. 3 简化准则 一个好的简化准则不仅要使原始模型的顶点删减率高、计算量小, 而且简化后的模型要尽可能地保留原模型的拓扑性质。以往一些算法单纯根据候选去除顶点的曲率或到其星形邻域平均平面的距离等准则作出顶点取舍判断, 都不同程度上存在着边界失真和保留伪点的情况。本算法由于注重了网格局部拓扑特征的识别, 因而有效地克服了上述不足。 准则1 若Star (V i) 为完全星形邻域, 满足下列条件(1) 或条件(2) 均可执行简化操作。 Sta r (V i) 由1 个同心超面组成, 即该同心超面就是Star (V i) 本身。如图3 所示, 此时删除顶点, 并对删除顶点后的网格空洞进行约束三角剖分。
图3 按条件(1) 去除顶点后的空洞剖分边界 首页 上一页 1 2 3 4 5 下一页 尾页 2/5/5 相关论文
首页 上一页 1 2 3 4 5 下一页 尾页 2/5/5