论文部分内容阅读
代数曲面在表示具有复杂拓扑的光滑外形方面以及相关的几何计算、外形分析方面具有优势,是主流参数表示形式——非均匀有理B-样条的有益补充,张量积代数B-样条曲面(简称ABS曲面)继承了代数曲面的优势,且具有交互直观、可局部编辑等特点,在几何造型中具有潜在的应用价值,结合当前通用图形处理器(GPU)的快速发展,本文以ABS曲面的实时光线投射绘制为切入点,深入分析了计算机辅助几何设计与图形学中的一元Bernstein多项式并行求根问题,提出了基于Kantorovich定理的非线性几何约束方程组的高效并行求解算法,并在此基础上实现了基于GPU的ABS曲面实时绘制。
论文首先回顾了曲面表示和造型方法的分类和发展历史,并简要分析了各自的特点,然后着重介绍了ABS曲面的定义和相关几何性质,提出了几种ABS曲面造型方法,包括一般代数曲面与ABS曲面的相互转换、基于有向距离场的ABS曲面拟合、CSG造型等。这些造型方法为后续ABS曲面的实时绘制提供了素材。
如何设计高效、鲁棒的一元多项式方程求解算法是代数曲面实时绘制的核心问题。本文对计算机辅助几何设计与图形学中的一元幂基和Bernstein多项式方程的各种求根算法,从理论基础、数值鲁棒性与计算效率等方面做了详细的介绍、分析和实验对比,并对于各种求根算法的选用给出了建议。在此基础上,本文提出了一种迭代的、无条件收敛的Bézier点插入算法,理论分析和实验结果显示,该算法在时间和空间复杂度、可编程方面具有优势,而且适合于在当前通用GPU上并行实现,
为了实现更一般的Bernstein多项式约束方程组的高效、鲁棒求解,本文提出了一种基于Kantorovich定理的并行求根算法.该算法可以隔离方程组的单根,并给出良好的初值,保证Newton-Raphson迭代算法的收敛性;并对某些重根也能高效、鲁棒地求解.该算法解决了已有几何求根算法中给定初值的收敛性问题,并且适合于在GPU上并行实现。实验结果表明,在求解大规模约束方程组时,该算法比基于CPU的几何造型引擎IRIT中的相关算法快两个数量级。
曲面的高质量实时绘制是交互式几何造型的基础。已有代数曲面的实时绘制方法主要针对低次或单片曲面,ABS曲面的次数相对较高且包含数目较多的代数曲面片,因此,实时绘制ABS曲面是一个具有挑战性的问题。结合当前通用GPU的快速发展以及基于非线性Bernstein多项式方程并行求根算法的研究,本文提出了两种基于GPU的ABS曲面实时光线跟踪算法。
第一种是基于函数复合的实时光线投射方法.首先使用3DDDA和深度剥离技术,高效地计算光线与曲面片定义域的交点。然后通过函数复合,将光线与ABS曲面的求交转化为一元方程求根问题,并使用前面提出的Bézier点插入算法高效并行求解.同时实现了绘制曲面的高效反走样.实验结果表明,该算法可以实时绘制具有数以千计面片的6-9次ABS曲面,即使透明效果的绘制也可以达到交互式的帧率。
在第二种算法中,为了在GPU上充分发挥Newton-Raphson算法可以高效求根的特性,本文将代数曲面的多边形化与光线跟踪有机结合起来,实现了更高效的ABS曲面实时绘制.算法首先使用保拓扑多边形化得到ABS曲面的三角网格逼近,然后用其光栅化结果作为计算光线与曲面求交的Newton-Raphson迭代算法的初值。在曲面的轮廓线附近,利用极曲面判断光线与曲面交点数目并进行根隔离,并使用试位法进行求交计算.实验结果表明,与已有基于函数复合的实时绘制算法相比,该算法可以取得3-6倍的加速效果。
最后,总结了全文并指出了进一步的研究方向。