发明名称 一种代数B样条曲面的实时绘制方法
摘要 本发明公开了一种基于NR迭代算法的ABS实时绘制方法,包括七步:1)输入待绘制ABS的相关信息并计算Lipschitz常数,将ABS转换为分片的Bezier曲面片;2)使用MC算法抽取ABS的等值面;3)实时计算ABS的极曲面;4)对等值面进行绘制,得到等值面及其侧影轮廓线的初始值;5)聚集等值面的侧影轮廓线的初始值,根据ABS及其极曲面方程,使用NR迭代算法对初始侧影轮廓线进行计算得到浮点精度的侧影轮廓线,并对其进行校正;6)计算侧影轮廓线的每个像素视线和Bezier曲面的交点;7)通过NR迭代算法利用邻接的Bezier曲面信息重新进行迭代求精,得到所有光线与代数B样条曲面的正确交点,然后再利用交点信息与光源、视点的相对位置以及曲面本身的材质计算光照。本发明方法能实现任意次数的代数曲面的绘制。
申请公布号 CN101599181B 申请公布日期 2012.04.25
申请号 CN200910100228.7 申请日期 2009.07.01
申请人 浙江大学 发明人 冯结青;卫飞飞
分类号 G06T15/00(2006.01)I 主分类号 G06T15/00(2006.01)I
代理机构 杭州天勤知识产权代理有限公司 33224 代理人 胡红娟
主权项 一种代数B样条曲面的实时绘制方法,该方法包括以下七个步骤:(1)输入待绘制的代数B样条曲面的相关信息,计算得到代数B样条曲面的Lipschitz常数,并通过节点插入算法将代数B样条曲面转换为分片的Bezier曲面片;(2)使用Marching cubes算法抽取代数B样条曲面的等值面,所述等值面的分辨率为所述的代数B样条曲面的Lipschitz常数;(3)实时的计算代数B样条曲面的极曲面;(4)使用DirectX流水线对步骤(2)中的Marching cubes算法得到的等值面进行绘制,利用其高效的硬件光栅化算法和Z‑Culling技术,得到代数B样条曲面的等值面及其侧影轮廓线的初始值;所述的侧影轮廓线是指在曲面上其法向与视线方向垂直的位置;(5)聚集步骤(4)中得到的等值面的侧影轮廓线的初始值,根据代数B样条曲面及其极曲面方程,使用Newton‑Raphson迭代算法对初始的侧影轮廓线进行计算,得到代数B样条曲面的等值面的浮点精度的侧影轮廓线,并对侧影轮廓线附近的值进行矫正;所述的初始的侧影轮廓线为曲面与其极曲面的交线;(6)校正后的初始值按照其所属的Bezier曲面片分类,进行聚类后使用Newton‑Raphson算法迭代,得到每个像素的视线跟每个Bezier曲面的交点;(7)通过Newton‑Raphson迭代算法利用邻接的Bezier曲面信息重新进行迭代求精,得到所有光线与代数B样条曲面的正确交点,然后再利用交点信息与光源、视点的相对位置以及曲面本身的材质计算光照。
地址 310027 浙江省杭州市西湖区浙大路38号