发明名称 曲面渲染系统及方法
摘要 本发明提供一种曲面渲染方法,应用于数据处理装置。该方法包括:从与数据处理装置相连接的存储设备读取曲面控制点及曲面边界点,根据曲面控制点及曲面边界点对曲面进行三角网格化;根据网格化后的曲面中相邻三角形法向量的夹角大小对曲面中的三角形进行多级细分;确定多级细分后的曲面中的表面三角形及内部三角形,得到曲面中所有三角形的显示及隐藏信息;及确定与数据处理装置相连接的显示设备的显示范围,在所述显示范围内显示曲面中的表面三角形。本发明还提供一种曲面渲染系统。
申请公布号 CN101872488B 申请公布日期 2012.05.16
申请号 CN200910301881.X 申请日期 2009.04.27
申请人 鸿富锦精密工业(深圳)有限公司;鸿海精密工业股份有限公司 发明人 张旨光;吴新元;孙小超
分类号 G06T15/00(2006.01)I;G06T17/20(2006.01)I 主分类号 G06T15/00(2006.01)I
代理机构 代理人
主权项 一种曲面渲染方法,应用于数据处理装置,其特征在于,该方法包括:曲面网格化步骤:从与数据处理装置相连接的存储设备读取根据实物模型的点云数据构建的曲面的控制点及边界点,根据曲面的控制点及边界点对曲面进行三角网格化以逼近实物模型,包括:(a1)从所述存储设备读取曲面的控制点及边界点组成的三维队列;(a2)将所述三维队列转换为参数平面中的二维队列;(a3)获取所述三维队列中表示曲面上最外层的点,在所述二维队列中查找该最外层的点的对应点,视该对应点为二维队列中的第一点;(a4)在所述二维队列中查找与第一点最近的第二点,该第一点、第二点构成三角形的一条边;(a5)在所述二维队列中查找第三点,查找原则是第一点、第二点、第三点构成的三角形的外接圆内没有所述二维队列中的其它点,使得第一点、第二点、第三点构成的三角形接近于等边三角形;(a6)根据上述原则依次在所述二维队列中查找构成其它三角形的顶点,得到三角网格化后的曲面;及(a7)根据查找顺序将曲面上的各三角形信息依次加入三角形标示数组;曲面细分步骤:根据网格化后的曲面中相邻三角形法向量的夹角大小对曲面中的三角形进行多级细分以更精确地逼近实物模型,包括:(b1)将用户设定的角度范围划分为若干个细分级别;(b2)根据所述三维队列、二维队列计算所述三维队列中每个顶点的向量,每个顶点的向量等于该顶点所在所有三角形的法向量的平均值;(b3)读取二维队列中的第一点;(b4)读取该第一点相邻区域的三角形;(b5)计算该相邻区域内每个顶点的向量与所有其它顶点的向量的夹角,得到最大夹角;(b6)确定该最大夹角所在的细分级别;(b7)读取所述相邻区域内相邻三角形的法向量夹角在该细分级别内的三角形队列;(b8)判断所述最大夹角是否在最精确的细分级别;(b9)若该最大夹角在最精确的细分级别,表明该相邻区域内的三角形不需要进一步细分,流程转入步骤(b11),若该最大夹角不在最精确的细分级别时,得到所述三角形队列中各三角形任意两边中线的交点,根据各三角形顶点及所述交点将各三角形分为三个小三角形;(b10)计算各相邻小三角形法向量夹角的最大值,确定该最大值所在的级别,针对三角形队列中每个三角形细分后的小三角形子区域,流程自所述判断步骤开始重复,直到各小三角形子区域的细分程度满足所述最精确的细分级别;及(b11)依据对二维队列中第一点相邻区域细分的方法对曲面上的其它区域进行多级细分;曲面显示及隐藏信息确定步骤:确定多级细分后的曲面中的表面三角形及内部三角形,得到曲面中所有三角形的显示及隐藏信息;及曲面显示步骤:确定与数据处理装置相连接的显示设备的视口显示范围,在所述视口显示范围内显示曲面中的表面三角形。
地址 518109 广东省深圳市宝安区龙华镇油松第十工业区东环二路2号