一种通过特征阵列生成表面3D纹理的方法技术

技术编号:37308905 阅读:29 留言:0更新日期:2023-04-21 22:52
本发明专利技术公开了一种通过特征阵列生成表面3D纹理的方法,在三角网格表面生成规则的3D纹理特征,起到防滑、美观的作用。本发明专利技术以特征网格的边缘轮廓为基本图形,通过比例缩放、阵列后,与主网格选定区域的uv展开图求交,将相交结果映射回主网格,得到多个多边形区域,然后删除各区域内的三角面片,形成孔洞,再通过缩放、旋转、平移特征网格,使特征网格的边缘轮廓匹配对应的孔洞,缝合后构成一体化网格。当特征网格较小时,可以实现3D纹理的效果。相较于传统方法依赖位图、生成网格致密、只支持2.5维的不足,本发明专利技术的网格密度取决于特征网格,数据量大为减少,且支持准3维特征。且支持准3维特征。且支持准3维特征。

【技术实现步骤摘要】
一种通过特征阵列生成表面3D纹理的方法


[0001]本专利技术属于图形处理领域,具体涉及一种通过特征阵列生成表面3D纹理的方法。

技术介绍

[0002]为生成3D纹理特征,现有方法有两种,其中一种从2D纹理图像提取高度信息,再通过参数化映射到三维空间中,这种方法生成的网格细节丰富,一般需要加密网格,致使数据量庞大,或者需要花费额外的时间对网格进行简化;其次,这类方法只能生成2.5维特征,无法生成准3维特征结构。
[0003]另外一种3D纹理较为规则,主要是对基本特征的重复。理论上,这种特征只需要较少的三角面片即可表达,但实际还是需要一幅2D图像来表示,并且无法生成较为复杂的空间结构。
[0004]因此针对上述两种方法的不足,需要一种可以生成复杂空间结构的表面3D纹理的方法,并且处理速度快,生成的模型数据量小。

技术实现思路

[0005]本专利技术的目的在于提供一种通过特征阵列生成表面3D纹理的方法,数据量少,支持准3维特征结构,处理速度快。
[0006]为了达到上述技术目的,本专利技术采用如下技术方案:一本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种通过特征阵列生成表面3D纹理的方法,其特征在于,包括如下步骤:(a)采用半边结构建立主模型即主网格M的拓扑连接关系,计算所有三角形f的单位法向;(b)在主网格M表面选择的区域,根据区域中的顶点与三角形f创建子网格N,并构建映射关系R,将子网格N中的顶点一一映射到主网格M中的相应顶点上并记录,识别子网格N的边界并通过参数化方法将子网格N展开到uv平面,形成参数化网格;(c)将特征网格的底面边缘轮廓记为多边形Pi,然后按设定的模式与间隔阵列多边形Pi,使之完全覆盖子网格N的参数化网格区域,保留完全在参数化网格区域内的多边形,构成集合{S};(d)集合{S}中的多边形Pi与参数化网格求交,将交点映射到主网格M上,在主网格上交点位置插入新的顶点,集合{S}中的多边形映射到主网格后得到一系列由半边包围的封闭区域,记作{Loop},按这些区域边界插入新的边;(e)主网格M中多于3条边的面三角化,删除{Loop}中各封闭区域内部的三角形f,得到一系列孔;(f)根据孔的大小缩放特征网格,旋转、平移特征网格,特征网格边缘点调整到孔上对应点,对齐孔位,将主网格M与各个经过变换后的特征网格缝合为一体。2.根据权利要求1所述一种通过特征阵列生成表面3D纹理的方法,其特征在于:步骤(d)中,多边形Pi与参数化网格求交的具体方法如下:对集合{S}中的任一多边形Pi,从序号0开始,找到一个完全在三角形f内部的顶点P0,从P0开始,计算Pi与参数化网格的一系列交点,其中,记录交点坐标pt,交点所在半边h0,交点到半边起点的距离与半边长度之比t,插入交点后,交点所在半边一分为二,h0的起点不变,终点指向点pt,总长度缩短,剩下的部分构成新的半边h1, o1为h1的对侧半边。3.根据权利要求2所述一种通过特征阵列生成表面3D纹理的方法,其特征在于:步骤(d)中,多边形Pi的顶点也作为交点处理,当顶点完全在三角形f内部时,t=

1,h0取三角形f指向的半边h;当顶点在三角形f边上时,判断顶点在网格边上。4.根据权利要求2所述一种通过特征阵列生成表面3D纹理的方法,其特征在于:步骤(d)中,集合{S}中的多边形Pi映射到主网格M的具体方法为:根据映射关系R,将交点信息从子网格N的参数化网格映射回主网格M,即将所在边的端点映射回去,然后按交点的比例值t计算出映射边上的交点坐标;对于三角形f内的点,先在子网格N参数化网格上计算质心坐标,然后用质心坐标计算对应点在主网格M中的坐标;与此同时,交点所在半边h0也改为指向主网格M中的对应半边。5.根据权利要求4所述一种通过特征阵列生成表面3D纹理的方法,其特征在于:步骤(d)中,得到一系列由半边包围的封闭区域的具体方法为:将t值不为

1的交点按所在边进行归类,对任意一条边,如果有交点,记该边的两条半边分别为he0与he1,以he0为基准,当交点所在半边为he1时,相应的t用1.0

t代替;将该边上的交点按t值从大到小排序,然后在半边he0上依次插入这些交点,同时更新交点信息中的h0与o1。6.根据权利要求1所述一种通过特征阵列生成表面3D纹理的方法,其特征在于:步骤(d)中,按这些区域边界插入新的边的具体方法为:将多边形集合{S}分为两类{S1}与{S2},其中,{S2}中的多边形,与子网格N参数化网格的交点的t值均为

1或判断为顶点在网格边
上,{S1}是{S}中除去{S2}的部分,对集合{S1}中的任一多边形的交点,找出t≠

1的所有交点序号,对任意两个前后相邻的序号i、j,根据情况向...

【专利技术属性】
技术研发人员:区宇辉何雪军邢世海裴文剑
申请(专利权)人:浙江闪铸三维科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1