论文部分内容阅读
细分方法在国际上已成为图形学的研究热点,特别是Catmull—Clark细分方法最为流行。尽管Catmull—Clark细分曲面的算法在计算机图形显示中非常成功,然而近年来工程上的曲面造型却仍然停留在NURBS曲面上,改进不大。其主要原因是基于均匀三次Catmull—Clark的细分方法难以精确地处理工程上最常见的圆和圆柱等。本文结合国家自然科学基金项目,通过对细分方法及C-B样条曲线、曲面的分析和研究,完善了C-B样条的功能,成功地将C-B样条应用于Catmull—Clark细分曲面,得到基于C-B样条的Catmull—Clark细分算法,为细分曲面用于工程造型进行了成功的试验。这种新的细分曲面方法不但能够象C-B样条曲线、曲面一样,精确地表示圆柱等常规曲面,统一工程曲面的造型;同时它仍然保持细分曲面的造型特点:解决NURBS曲面难以解决任意拓扑结构的造型问题,初步解决了细分方法在工程上难以应用的问题。同时由于控制参数α的调节作用,改善了曲面的细分效果。主要研究内容如下: 首先,介绍和分析了曲面细分的现状、特点和相关算法,较为全面地讨论了Catmull—Clark、Do-Sabin、和Loop等细分模式的基本原理和算法,比较了他们的优缺点,指出了Catmull—Clark方法在细分曲面中的优势。 然后,在分析C曲线的基础上,研究了C—B样条曲线、曲面的特性,和修改控制参数和控制顶点对C—B样条曲线形状的调节作用,实现了用C-B样条来表示圆弧和椭圆弧。同时又进一步将结果推广到曲面上。构造了平移、旋转、椭球等常见的工程曲面。 最后,利用C—B样条细分算法的特性,将它用于Catmull—Clark细分曲面,同时提出一种新的在奇异点处的细分算法,构造了基于C—B样条的Catmull—Clark细分曲面,使得Catmull—Clark细分曲面的形状可以调整,并能生成圆柱等工程上常见曲面。同时还为进一步的研究和试验用Visual C++和OpenGL开发了专用的软件包。