论文部分内容阅读
网格模型表示法是一种有效的三维实体表达方式。随着科学技术的进步,在计算机图形学、虚拟现实、地理信息系统、医学图像系统等领域所构造和使用的三维网格模型越来越精细、越来越复杂。这些复杂的模型不但对计算机的存储容量、处理速度提出了很高的要求,而且成为实时绘制、网络传输的瓶颈。并且,很多情况不需要对模型的每一细节都作详细的刻画。因此模型简化成为非常重要的研究课题。模型简化是指在保持原模型几何形状基本不变的前提下,采用适当的算法减少该模型的面片数、顶点数和边数。 近年来,国内外学者在网格模型简化方面作了大量的研究,并取得了很大的成绩。但网格模型简化问题为一个NP问题,简化速度和简化精度互为矛盾,始终无法达到最佳平衡。 在对各种简化准则和简化算法进行分析对比后,在考虑了网格模型的拓扑结构信息后,提出了一种新的模型简化算法,基于顶点度的二次误差度量的边折叠算法。该算法以加权的二次误差度量和边折叠算法为基础,在简化过程中,通过加入顶点的控制,克服了收缩大度顶点关联边时,不但计算量大,而且会导致模型变动太大,简化不够准确的问题。算法同时也克服了在某些情况下仅根据边折叠开销的大小进行收缩,可能会产生以某一点为顶点的边不断地收缩,从而导致该点的顶点度增大,连接的三角形过多,造成三角形网格形状很差、大小不一的问题。新算法加快了模型的简化速度,提高了模型的简化精度。 本论文针对网格模型的快速简化算法进行了研究。首先,介绍了三角网格模型的有关概念和简化准则,对当前各种简化算法进行了详细的综述。然后,详细阐述了基于顶点度的二次误差度量的边折叠算法的思想和简化流程。最后,以Visual C++和OpenGL实现了新算法,并且对多组网格模型进行简化,验证了算法的有效性。