模型的补丁结构建模方法、装置、设备及存储介质与流程

未命名 09-15 阅读:64 评论:0


1.本发明涉及渲染技术领域,特别是涉及一种模型的补丁结构建模方法、一种模型的补丁结构建模装置、相应的一种电子设备以及相应的一种计算机可读存储介质。


背景技术:

2.在渲染中,通常存在对模型的某个区域生成补丁的需求。
3.在相关技术中,主要是通过手动建模补丁的模型结构,采用该手动建模补丁结构的建模方式,特别是在对于复杂物体的模型结构的补丁生成,其补丁结构的生成效率较低。


技术实现要素:

4.鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种模型的补丁结构建模方法、一种模型的补丁结构建模装置、相应的一种电子设备以及相应的一种计算机可读存储介质。
5.本发明实施例公开了一种模型的补丁结构建模方法,所述方法包括:
6.响应预设模型的输入指令,将所述预设模型转换为封闭模型;
7.确定在所述封闭模型的模型表面上指定生成补丁结构的指定区域;
8.获取所生成的补丁结构和获取所述指定区域的第一顶点法线;
9.基于所述指定区域的第一顶点法线和所述封闭模型,将所述补丁结构呈现在所述封闭模型的指定区域,得到具有补丁结构的目标模型。
10.本发明实施例还公开了一种模型的补丁结构建模装置,所述装置包括:
11.预设模型输入模块,用于响应预设模型的输入指令,将所述预设模型转换为封闭模型;
12.指定区域确定模块,用于确定在所述封闭模型的模型表面上指定生成补丁结构的指定区域;
13.补丁结构获取模块,用于获取所生成的补丁结构和获取所述指定区域的第一顶点法线;
14.目标模型生成模块,用于基于所述指定区域的第一顶点法线和所述封闭模型,将所述补丁结构呈现在所述封闭模型的指定区域,得到具有补丁结构的目标模型。
15.本发明实施例还公开了一种电子设备,包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现任一项所述模型的补丁结构建模方法。
16.本发明实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现任一项所述模型的补丁结构建模方法。
17.本发明实施例包括以下优点:
18.在本发明实施例中,通过响应对预设模型的输入指令,可以将所输入的预设模型
转换为封闭模型,并确定在封闭模型的模型表面上指定生成补丁结构的指定区域,然后基于指定区域的第一顶点法线以及封闭模型,将补丁结构呈现在指定区域,以得到在指定区域具有补丁结构的目标模型。通过对预设模型的输入响应自动生成具有补丁结构的目标模型,基于程序化对模型指定区域生成补丁结构,摆脱传统手动制作的流程,提高在模型中生成补丁结构的生产效率,缩短大量生产所需要的制作周期。
附图说明
19.图1是本发明的一种模型的补丁结构建模方法实施例的步骤流程图;
20.图2是本发明实施例提供的基于vdb特性进行多边形模型转换的原理示意图;
21.图3a至图3u是本发明实施例提供的对模型的补丁结构进行建模的过程示意图;
22.图4是本发明的一种模型的补丁结构建模装置实施例的结构框图。
具体实施方式
23.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
24.在渲染中,通常存在对模型的某个区域生成补丁的需求。
25.在相关技术中,通常表现为使用maya(是autodesk开发的三维计算机图形软件,用于创建动画、模型、渲染和视觉效果)或者3dsmax(是autodesk开发的三维建模、动画和渲染软件)等软件进行多边形建模完成,采用该手动建模补丁结构的建模方式,对于补丁结构的制作效率低,特别是在对于复杂物体的模型结构的补丁生成的情况下,制作难度将会呈指数级增长;以及,在面对需要进行大量模型的补丁结构生成的场景时,由于各个模型结构都是独特的模型,每次制作得到的补丁结构无法实现通用,需要不断地进行手动重复劳动,工作量巨大且消耗大量人力。此外,在采用手动建模补丁结构的方式中,将会对补丁结构的生成进行人为干预,可能导致所产出的补丁结构的艺术效果将会受到人为因素的影响,从而造成其所呈现的艺术效果的不稳定。
26.本发明实施例通过以程序化自动生成模型中补丁结构的制作方案,代替基于人力的建模流程,主要通过响应对预设模型的输入指令,可以将所输入的预设模型转换为封闭模型,并确定在封闭模型的模型表面上指定生成补丁结构的指定区域,然后基于指定区域的顶点法线以及封闭模型,将补丁结构呈现在指定区域,以得到在指定区域具有补丁结构的目标模型,以基于程序化对模型指定区域生成补丁结构,使用houdini(是一种3d计算机图形软件)的程序化设计算法,设计程序规则让计算机自动在模型上生成模型的补丁结构,以摆脱传统手动制作的流程,利用houdini程序自动化,进一步提高生产效率,缩短大量生产所需要的制作周期。
27.参照图1,示出了本发明的一种模型的补丁结构建模方法实施例的步骤流程图,具体可以包括如下步骤:
28.步骤101,响应预设模型的输入指令,将预设模型转换为封闭模型;
29.在本发明实施例中,可以通过对预设模型的输入响应自动生成具有补丁结构的目标模型,基于程序化在模型的指定区域生成补丁结构,
30.在本发明的一种实施例中,预设模型通常具备模型内部细节,即基于模型内部面
对预设模型进行构成,为了避免在后续进行补丁结构的生成过程,例如撒点时不会撒到模型内部等过程受到模型内部面的影响,此时可以将预设模型转换为封闭模型,所转换得到的封闭模型为去除模型内部面之后的模型。
31.具体地,对于预设模型进行封闭模型的转换方式,主要可以基于对预设模型进行包裹操作实现。包裹操作,主要可以表现为将预设模型转换为预设体积数据类型的模型数据,然后再基于模型数据将预设模型转换为布线均匀的多边形模型。
32.其中,预设体积数据类型可以是vdb(是一种更新的通用体积数据类型,可以导出vdb格式作为通用素材,包含多种密度等体积数据)数据类型,此时可以在将模型转换为vdb数据类型的模型数据之后,再将该模型数据转换回多边形模型,使得能够利用vdb体积的特性,得到一个布线平均的单个封闭模型,以便于后续在进行撒点时能够实现均匀撒点,以及避免撒点到模型内部。
33.如图2所示,在基于vdb数据类型的模型数据转换为多边形模型的过程中,基于vdb体积的特性,其布线将会自动变得平均,且可以把预设模型转换成处于包裹的状态,即其可以对预设模型的内部所穿插的多边形进行剔除,实现对模型内部面的去除,得到封闭模型。
34.在具体实现中,在将预设模型转换为预设体积数据类型的模型数据时,示例性地,可以通过使用vdbfrompolygons节点,将该模型转换为vdb类型的模型数据;在基于vdb类型的模型数据对多边形模型进行转换时,示例性地,可以通过使用convertvdb将该模型转换回多边形模型,本发明实施例对此不加以限制。
35.步骤102,确定在封闭模型的模型表面上指定生成补丁结构的指定区域;
36.在对预设模型转换为封闭模型之后,此时为了在预设模型的指定区域生成补丁结构,可以对封闭模型的模型表面上指定生成补丁结构的指定区域进行确定。
37.具体地,可以获取在封闭模型进行标记的补丁位置,然后基于所标记的补丁位置,确定在封闭模型的模型表面上指定生成补丁结构的指定区域。在实际应用中,所标记的补丁位置可以基于标记操作得到,所进行的标记操作,可以基于用户在转换为封闭模型的模型表面上所进行的操作实现,具体可以表现为在所要生成补丁结构的位置进行涂色,即可以将颜色区域部分作为补丁结构布置的指定区域。
38.在具体实现中,对于基于预设模型所转换得到的封闭模型,其顶点可以具有相应的顶点属性,例如包含但不限于顶点位置坐标、顶点uv坐标、顶点颜色、顶点法线、顶点切线、顶点副切线等,此时可以通过使用normal节点,使模型的顶点法线垂直于封闭模型的模型表面;然后可以通过添加attribpaint节点,在所要生成补丁的位置进行涂色,以确定指定区域。
39.步骤103,获取所生成的补丁结构和获取指定区域的第一顶点法线;
40.在对预设模型转换为封闭模型之后,此时为了在预设模型的指定区域生成补丁结构,除了对封闭模型的模型表面上指定生成补丁结构的指定区域进行确定以外,还可以对用于在指定区域生成的补丁结构进行获取。
41.对于补丁结构的生成过程,可以通过对预设包围盒模型进行处理得到。具体的,所获取的预设包围盒模型可以是新建的box,其可以呈现为正方体,由于补丁结构的形状通常呈现为正方形,为了获得正方形,此时可以对所新建的box中将例如除了朝向正z轴的正方面以外的其他正方面进行删除,即仅保留一个正方面,在实际应用中可以通过采用blast反
向删除所要保留的正方面实现;此时可以将预设包围盒模型转换为针对预设包围盒的第一包围线,具体可以将所保留的正方面转换为第一包围线,以将正方面转换为呈现正方形形状的线框,该用于指示线框的第一包围线可以具有用于将不同方向上的线进行连接的部分顶点,即可以包含能够用于连接形成线段的多个第一目标顶点;此时可以删除第一包围线中经由第一目标顶点连接形成的线段,得到各个方向上的线互不接触的第二包围线,基于第二包围线和预设包围盒模型,得到补丁结构。
42.具体的,对于第一包围线中经由第一目标顶点连接形成的线段的删除操作,可以通过对多个顶点进行切角操作,将各个顶点切割得到用于构成预设角度的多个第二目标顶点,然后在包围线中将第一目标顶点和第二目标顶点进行删除,得到各个方向上的线互不接触的第二包围线实现。
43.在具体实现中,可以通过使用polypath将预设包围盒模型转换为第一包围线,为了将第一包围线中连在一起的部分进行删除,并将所连接的部分进行一定距离的分离,可以对第一包围盒中经由第一目标顶点连接形成的线段进行删除,其具体所进行的切角操作,示例性地,可以通过使用polybevel对呈现正方形形状的线框的第一包围盒中的四个顶点进行切角,然后可以将切割得到的多个第二目标顶点以及原有的四个第一目标顶点放入offsetpoints组中,通过删除offsetpoints组得到具有4段分离且互相独立、互不接触的线段的第二包围线。
44.在得到第二包围线之后,可以对第二包围线进行顶点的插值,即第二包围线可以具有按照预设间隔添加的顶点,在基于第二包围线和预设包围盒模型生成补丁结构的过程中,可以通过向预设包围盒模型中添加预设尺寸大小的多边形,得到具有若干个顶点的第一包围盒模型,然后对第一包围盒模型所具有的若干个顶点构建第二顶点法线,得到若干个第二顶点法线垂直于第一包围盒模型的模型表面的第二包围盒模型,即此时第二包围盒模型表现为一个所有法线垂直于其表面的模型,以将第二包围盒模型的第二顶点法线传递至第二包围线上具有的顶点,得到补丁结构。
45.在具体实现中,在得到第二包围线之后,可以通过reasample在第二包围线上进行一些顶点的插值操作;然后可以对之前获取的预设包围盒模型(即box)添加细分多边形,即可以表现为让预设包围盒模型拥有更多顶点,得到具有若干个顶点的第一包围盒模型以及具有若干个点法线的第二包围盒模型,以便基于其所具备的若干个顶点和若干条第二顶点法线使得后续在传递属性时更加准确;那么此时可以通过使用attribtransfer,将第二包围盒模型的第二顶点法线传递至第二包围线上具有的顶点,即进行属性的传递,完成对补丁结构的生成。
46.其中,属性的传递主要可以通过位置传递实现。具体的,由于第二包围盒模型和第二包围线来自同一个box,则表示第二包围盒模型的第二顶点法线所在的位置,与第二包围线上顶点所在的位置是相同的,此时所使用的attribtransfer,将会使得第二包围线上的顶点自动寻找距离自身最近的点的法线并应用在自身,实现点法线的传递。
47.在本发明的一些实施例中,还可以在所确定的指定区域进行撒点,使得指定区域上的点的法线垂直于封闭模型上指定区域对应的模型表面部分,得到指定区域的第一顶点法线。示例性的,可以通过使用scatter在模型表面根据颜色部分(即指定区域)随机散布一些点,以便基于指定区域所具有的第一顶点法线进行后续在指定区域生成补丁结构的流
程。
48.步骤104,基于指定区域的第一顶点法线和封闭模型,将补丁结构呈现在封闭模型的指定区域,得到具有补丁结构的目标模型。
49.在获取得到补丁结构,以及指定区域的点法线之后,可以基于指定区域的第一顶点法线对封闭模型进行处理,以将补丁结构呈现在封闭模型的指定区域,完成对目标模型的程序化生成。
50.具体的,补丁结构可以具有基于预设间隔分布的垂直于补丁结构表面的点法线,此时可以基于指定区域所具有的第一顶点法线,以及补丁结构所具有的第二顶点法线,实现补丁结构在指定区域的呈现。
51.补丁结构在指定区域的呈现,主要可以通过将补丁结构的线框在指定区域进行呈现的模型结果,与将补丁结构的面在指定区域进行呈现的模型结果进行融合实现,并基于融合结果得到在指定区域具有补丁结构的目标模型。
52.其中,将补丁结构的线框在指定区域进行呈现的模型结果,可以通过基于指定区域的第一顶点法线和补丁结构的第二顶点法线,将补丁结构的线在封闭模型的指定区域进行呈现,得到第一中间处理模型数据,然后将第一中间处理模型数据投射至预设模型上,得到第一中间处理模型进行体现。
53.具体的,可以基于指定区域的第一顶点法线和补丁结构的第二顶点法线,在封闭模型的指定区域呈现补丁结构的线框,然后通过获取预设线段模型,所获取的预设线段模型可以用于提供与补丁结构的线框方向垂直的若干个线段,线段按照预设间隔进行分布;此时可以基于补丁结构上按照预设间隔分布的顶点,在封闭模型的指定区域所呈现的补丁结构的线框上添加按照预设间隔分布的线段,得到第一中间处理模型数据。
54.在具体实现中,可以通过使用copytopoints将指定区域具有第一顶点法线的模型结果和具有第二顶点法线的补丁结构进行处理,由于指定区域具有点法线的模型结果已对法线进行相关处理,当将具有第二顶点法线的补丁结构复制到指定区域具有第一顶点法线的模型结果时,补丁结构的第二顶点法线上相应的点将会自动跟随指定区域的第一顶点法线的方向;此时可以通过新建预设线段模型(即line线段模型),然后再次使用copytopoints将预设线段模型所提供的线段复制到前述模型结果的每一个顶点上,此时由于在前述过程中已经对法线进行处理,该线段模型的朝向会跟随着补丁结构的点法线方向,以垂直于线框,即可以将这些小线段看作补丁结构中缝纫的线;然后可以通过调用ray节点,将添加有线段的补丁结构的模型结果投射或者贴合至预设模型上,得到将补丁结构的线框在指定区域进行呈现的模型结果。
55.而将补丁结构的面在指定区域进行呈现的模型结果,可以通过基于指定区域的第一顶点法线和封闭模型,将补丁结构的线在封闭模型的指定区域进行呈现,得到第二中间处理模型数据,然后将第二中间处理模型数据投射至预设模型上,得到第二中间处理模型进行体现。
56.具体的,可以基于在封闭模型上指定区域的第一顶点法线,在封闭模型的模型表面上获取与指定区域的第一顶点法线的点重合的中心位置,以中心位置获取朝向垂直于模型表面的多边形面片,然后基于多边形面片将补丁结构的面在封闭模型的指定区域进行呈现,得到第二中间处理模型数据。
57.在具体实现中,可以通过调用所转换得到的封闭模型获取模型面片,然后将所获取的模型面片与具有点法线的指定区域的模型结果再次使用copytopoints进行处理,以得到模型面片的中心位置与指定区域的第一顶点法线的点进行重合,且朝向垂直于表面的多边形面片,该多边形面片即可以作为补丁结构的面;此时可以将所得到的多边形面片指普通的多边形细分,以增加多边形面的数量后,通过调用ray节点,将该多边形面的模型结果投射或者贴合至预设模型上,得到将补丁结构的面在指定区域进行呈现的模型结果。
58.在本发明的一种优选实施例中,在基于上述过程得到,将补丁结构的线框在指定区域进行呈现的模型结果(基于第一中间处理模型进行体现),以及将补丁结构的面在指定区域进行呈现的模型结果(基于第二中间处理模型进行体现)之后,可以将第一中间处理模型和第二中间处理模型进行融合,得到具有补丁结构的目标模型。
59.在本发明实施例中,通过响应对预设模型的输入指令,可以将所输入的预设模型转换为封闭模型,并确定在封闭模型的模型表面上指定生成补丁结构的指定区域,然后基于指定区域的第一顶点法线以及封闭模型,将补丁结构呈现在指定区域,以得到在指定区域具有补丁结构的目标模型。通过对预设模型的输入响应自动生成具有补丁结构的目标模型,基于程序化对模型指定区域生成补丁结构,摆脱传统手动制作的流程,提高在模型中生成补丁结构的生产效率,缩短大量生产所需要的制作周期。
60.参照图3a至图3u,示出了本发明实施例提供的对模型的补丁结构进行建模的过程示意图,在本发明实施例中,任何图形接口平台,可以通过为能够生成补丁结构的工具输入任意模型,输出在指定区域生成补丁结构后的模型结果,实现基于程序化对模型指定区域生成补丁结构的制作方案。
61.具体的,1)所输入的预设模型,可以如图3a所示,该预设模型可以是任意的一个模型;
62.2)如图3b所示,可以通过使用vdbfrompolygons节点,将该预设模型转换为vdb类型的模型数据;
63.3)通过使用convertvdb将该模型转换回如图3c所示的多边形模型,其主要可以利用vdb体积的特性,得到一个布线平均的单个封闭模型,以便于后续在进行撒点时能够实现均匀撒点,以及避免撒点到模型内部;
64.4)对于基于预设模型所转换得到的封闭模型,如图3d所示,可以通过使用normal节点,使模型的第一顶点法线垂直于封闭模型的模型表面;
65.5)如图3e所示,可以通过添加attribpaint节点,在所要生成补丁的位置进行涂色,以确定在所输入的预设模型中所要生成补丁结构的指定区域;
66.6)如图3f所示,可以通过使用scatter在模型表面根据颜色部分(即指定区域)随机散布一些点,以便基于指定区域所具有的第一顶点法线进行后续在指定区域生成补丁结构的流程;
67.7)此时可以对用于拷贝到点上的补丁结构模型进行制作,具体表现为新建如图3g所示的预设包围盒模型box,然后可以通过采用blast反向删除所要保留的正方面实现,即仅保留一个正方面,如图3h所示,例如仅保留朝向正z轴的正方面;
68.8)如图3i所示,可以通过使用polypath将预设包围盒模型转换为第一包围线;
69.9)为了将第一包围线中连在一起的部分顶点,即第一目标顶点进行删除,并将所
连接的部分进行一定距离的分离,如图3j所示,可以通过使用polybevel对呈现正方形形状的线框的第一包围盒中的四个第一目标顶点进行切角,然后可以将切割得到的第二目标顶点以及原有的四个第一目标顶点放入offsetpoints组中;
70.10)通过删除offsetpoints组,可以得到如图3k所示的具有4段分离且互相独立、互不接触的线段的第二包围线;
71.11)如图3l所示,可以通过reasample在第二包围线上进行一些顶点的插值操作;
72.12)如图3m所示,可以对之前获取的预设包围盒模型(即如图3g所示的box)添加细分多边形,然后得到如图3n所示的具有若干个第二顶点法线的第二包围盒模型,此时第二包围盒模型表现为一个所有法线垂直于其表面的模型;
73.13)通过使用attribtransfer,将第二包围盒模型的点法线(如图3n所示)传递至第二包围线上具有的顶点(如图3l所示),即进行属性的传递,得到如图3o所示的补丁结构;
74.14)通过使用copytopoints,将具有第二顶点法线的补丁结构(如图3o所示)复制到指定区域具有第一顶点法线的模型结果(如图3f所示),得到如图3p所示的模型结果,在该模型结果中,补丁结构的第二顶点法线上相应的点将会自动跟随指定区域的第一顶点法线的方向;
75.15)如图3q所示,可以通过新建预设线段模型(即line线段模型),然后再次使用copytopoints将预设线段模型所提供的线段复制到前述模型结果的每一个顶点上,在该模型结果中,该线段模型的朝向会跟随着补丁结构的点法线方向,以垂直于线框,即可以将这些小线段看作补丁结构中缝纫的线;
76.16)如图3r所示,可以通过调用ray节点,将添加有线段的补丁结构的模型结果投射或者贴合至预设模型上,得到将补丁结构的线框在指定区域进行呈现的模型结果;
77.17)通过调用所转换得到的封闭模型(如图3b所示)获取模型面片,然后将所获取的模型面片与具有第一顶点法线的指定区域的模型结果再次使用copytopoints进行处理,如图3s所示,在所得到的模型结果中,多边形面片的中心位置可以与指定区域的点法线的点进行重合,且朝向垂直于表面;
78.18)将所得到的多边形面片指普通的多边形细分,以增加多边形面的数量后,可以如图3t所示,通过调用ray节点,将该多边形面的模型结果投射或者贴合至预设模型上,得到将补丁结构的面在指定区域进行呈现的模型结果;
79.19)将补丁结构的线框在指定区域进行呈现的模型结果,与将补丁结构的面在指定区域进行呈现的模型结果进行融合,得到如图3u所示的目标模型,完成在预设模型的指定区域上生成补丁结构的过程。
80.在本发明的一些实施例中,可以将上述各个步骤封装为工具,并在任意图形平台上采用该工具,对所输入的任意模型,输出在指定区域生成补丁结构后的模型结果,实现在模型的指定区域上补丁结构的程序化生成。需要说明的是,模型可以在工具完成后,允许使用者进行随时替换;其中,任何图形接口平台可以包括但不限于虚幻引擎4(即unrealengine4,简称ue4)等主流引擎或者自研引擎,本发明实施例对此不加以限制。
81.在本发明实施例中,通过以程序化自动生成模型中补丁结构的制作方案,代替基于人力的建模流程,主要通过响应对预设模型的输入指令,可以将所输入的预设模型转换为封闭模型,并确定在封闭模型的模型表面上指定生成补丁结构的指定区域,然后基于指
定区域的第一顶点法线以及封闭模型,将补丁结构呈现在指定区域,以得到在指定区域具有补丁结构的目标模型,以基于程序化对模型指定区域生成补丁结构,使用houdini的程序化设计算法,设计程序规则让计算机自动在模型上生成模型的补丁结构,以摆脱传统手动制作的流程,利用houdini程序自动化,进一步提高生产效率,缩短大量生产所需要的制作周期。
82.需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
83.参照图4,示出了本发明的一种模型的补丁结构建模装置实施例的结构框图,具体可以包括如下模块:
84.预设模型输入模块401,用于响应预设模型的输入指令,将所述预设模型转换为封闭模型;
85.指定区域确定模块402,用于确定在所述封闭模型的模型表面上指定生成补丁结构的指定区域;
86.补丁结构获取模块403,用于获取所生成的补丁结构和获取所述指定区域的第一顶点法线;
87.目标模型生成模块404,用于基于所述指定区域的第一顶点法线和所述封闭模型,将所述补丁结构呈现在所述封闭模型的指定区域,得到具有补丁结构的目标模型。
88.在本发明的一种实施例中,预设模型输入模块401可以包括如下子模块:
89.模型转换子模块,用于将所述预设模型转换为预设体积数据类型的模型数据;基于所述模型数据将所述预设模型转换为布线均匀的多边形模型。
90.在本发明的一种实施例中,指定区域确定模块402可以包括如下子模块:
91.指定区域确定子模块,用于获取在所述封闭模型进行标记的补丁位置;基于所标记的补丁位置,确定在所述封闭模型的模型表面上指定生成补丁结构的指定区域。
92.在本发明的一种实施例中,补丁结构获取模块403可以包括如下子模块:
93.补丁结构生成子模块,用于获取预设包围盒模型,将所述预设包围盒模型转换为针对预设包围盒的第一包围线;所述第一包围线具有用于将不同方向上的线进行连接的第一目标顶点;删除所述第一包围线中经由所述第一目标顶点连接形成的线段,得到各个方向上的线互不接触的第二包围线;基于所述第二包围线和所述预设包围盒模型,得到补丁结构。
94.在本发明的一种实施例中,补丁结构生成子模块可以包括如下单元:
95.顶点部分删除单元,用于对所述多个第一目标顶点进行切角操作,将各个第一目标顶点切割得到用于构成预设角度的多个第二目标顶点;在所述包围线中将所述第一目标顶点和所述第二目标顶点进行删除,得到各个方向上的线互不接触的第二包围线。
96.在本发明的一种实施例中,所述第二包围线上具有按照预设间隔添加的顶点;补丁结构生成子模块可以包括如下单元:
97.补丁结构生成单元,用于向所述预设包围盒模型中添加预设尺寸大小的多边形,
得到具有若干个顶点的第一包围盒模型;对所述第一包围盒模型所具有的若干个顶点构建第二顶点法线,得到若干个第二顶点法线垂直于所述第一包围盒模型的模型表面的第二包围盒模型;将所述第二包围盒模型的点法线传递至所述第二包围线上具有的顶点,得到补丁结构。
98.在本发明的一种实施例中,所述补丁结构具有基于预设间隔分布的垂直于所述补丁结构表面的第二顶点法线;目标模型生成模块404可以包括如下子模块:
99.目标模型生成子模块,用于基于所述指定区域的第一顶点法线和所述补丁结构的第二顶点法线,将所述补丁结构的线在所述封闭模型的指定区域进行呈现,得到第一中间处理模型数据;将所述第一中间处理模型数据投射至所述预设模型上,得到第一中间处理模型;基于所述指定区域的第一顶点法线和所述封闭模型,将所述补丁结构的线在所述封闭模型的指定区域进行呈现,得到第二中间处理模型数据;将所述第二中间处理模型数据投射至所述预设模型上,得到第二中间处理模型;将所述第一中间处理模型和所述第二中间处理模型进行融合,得到具有补丁结构的目标模型。
100.在本发明的一种实施例中,目标模型生成子模块可以包括如下单元:
101.第一中间数据获取单元,用于基于所述指定区域的第一顶点法线和所述补丁结构的第二顶点法线,在所述封闭模型的指定区域呈现补丁结构的线框;获取预设线段模型,所述预设线段模型用于提供与所述补丁结构的线框方向垂直的若干个线段,所述线段按照预设间隔进行分布;基于所述补丁结构上按照预设间隔分布的顶点,在所述封闭模型的指定区域所呈现的补丁结构的线框上添加按照预设间隔分布的线段,得到第一中间处理模型数据。
102.在本发明的一种实施例中,目标模型生成子模块可以包括如下单元:
103.第二中间数据获取单元,用于基于在所述封闭模型上所述指定区域的第一顶点法线,在所述封闭模型的模型表面上获取与所述指定区域的第一顶点法线的点重合的中心位置,以所述中心位置获取朝向垂直于所述模型表面的多边形面片;基于所述多边形面片将所述补丁结构的面在所述封闭模型的指定区域进行呈现,得到第二中间处理模型数据。
104.在本发明实施例中,本发明实施例提供的模型的补丁结构建模装置,通过响应对预设模型的输入指令,可以将所输入的预设模型转换为封闭模型,并确定在封闭模型的模型表面上指定生成补丁结构的指定区域,然后基于指定区域的第一顶点法线以及封闭模型,将补丁结构呈现在指定区域,以得到在指定区域具有补丁结构的目标模型。通过对预设模型的输入响应自动生成具有补丁结构的目标模型,基于程序化对模型指定区域生成补丁结构,摆脱传统手动制作的流程,提高在模型中生成补丁结构的生产效率,缩短大量生产所需要的制作周期。
105.对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
106.本发明实施例还提供了一种电子设备,包括:
107.包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述模型的补丁结构建模方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
108.本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储计
算机程序,计算机程序被处理器执行时实现上述模型的补丁结构建模方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
109.本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
110.本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
111.本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
112.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
113.这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
114.尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
115.最后,需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
116.还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
117.以上对本发明所提供的一种模型的补丁结构建模方法、一种模型的补丁结构建模装置、相应的一种电子设备以及相应的一种计算机可读存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

技术特征:
1.一种模型的补丁结构建模方法,其特征在于,所述方法包括:响应预设模型的输入指令,将所述预设模型转换为封闭模型;确定在所述封闭模型的模型表面上指定生成补丁结构的指定区域;获取所生成的补丁结构和获取所述指定区域的第一顶点法线;基于所述指定区域的第一顶点法线和所述封闭模型,将所述补丁结构呈现在所述封闭模型的指定区域,得到具有补丁结构的目标模型。2.根据权利要求1所述的方法,其特征在于,所述将所述预设模型转换为封闭模型,包括:将所述预设模型转换为预设体积数据类型的模型数据;基于所述模型数据将所述预设模型转换为布线均匀的多边形模型。3.根据权利要求1所述的方法,其特征在于,所述确定在所述封闭模型的模型表面上指定生成补丁结构的指定区域,包括:获取在所述封闭模型进行标记的补丁位置;基于所标记的补丁位置,确定在所述封闭模型的模型表面上指定生成补丁结构的指定区域。4.根据所述权利要求1所述的方法,其特征在于,所述获取所生成的补丁结构,包括:获取预设包围盒模型,将所述预设包围盒模型转换为针对预设包围盒的第一包围线;所述第一包围线具有用于将不同方向上的线进行连接的第一目标顶点;删除所述第一包围线中经由所述第一目标顶点连接形成的线段,得到各个方向上的线互不接触的第二包围线;基于所述第二包围线和所述预设包围盒模型,得到补丁结构。5.根据权利要求4所述的方法,其特征在于,所述删除所述第一包围线中经由所述第一目标顶点连接形成的线段,得到各个方向上的线互不接触的第二包围线,包括:对所述多个第一目标顶点进行切角操作,将各个第一目标顶点切割得到用于构成预设角度的多个第二目标顶点;在所述包围线中将所述第一目标顶点和所述第二目标顶点进行删除,得到各个方向上的线互不接触的第二包围线。6.根据权利要求5所述的方法,其特征在于,所述第二包围线上具有按照预设间隔添加的顶点;所述基于所述第二包围线和所述预设包围盒模型,得到补丁结构,包括:向所述预设包围盒模型中添加预设尺寸大小的多边形,得到具有若干个顶点的第一包围盒模型;对所述第一包围盒模型所具有的若干个顶点构建第二顶点法线,得到若干个第二顶点法线垂直于所述第一包围盒模型的模型表面的第二包围盒模型;将所述第二包围盒模型的第二顶点法线传递至所述第二包围线上具有的顶点,得到补丁结构。7.根据权利要求1或4所述的方法,其特征在于,所述补丁结构具有基于预设间隔分布的垂直于所述补丁结构表面的第一顶点法线;所述基于所述指定区域的第一顶点法线和所述封闭模型,将所述补丁结构呈现在所述封闭模型的指定区域,得到具有补丁结构的目标模型,包括:
基于所述指定区域的第一顶点法线和所述补丁结构的第二顶点法线,将所述补丁结构的线在所述封闭模型的指定区域进行呈现,得到第一中间处理模型数据;将所述第一中间处理模型数据投射至所述预设模型上,得到第一中间处理模型;基于所述指定区域的第一顶点法线和所述封闭模型,将所述补丁结构的线在所述封闭模型的指定区域进行呈现,得到第二中间处理模型数据;将所述第二中间处理模型数据投射至所述预设模型上,得到第二中间处理模型;将所述第一中间处理模型和所述第二中间处理模型进行融合,得到具有补丁结构的目标模型。8.根据权利要求7所述的方法,其特征在于,所述基于所述指定区域的第一顶点法线和所述补丁结构的第二顶点法线,将所述补丁结构的线在所述封闭模型的指定区域进行呈现,得到第一中间处理模型数据,包括:基于所述指定区域的第一顶点法线和所述补丁结构的第二顶点法线,在所述封闭模型的指定区域呈现补丁结构的线框;获取预设线段模型,所述预设线段模型用于提供与所述补丁结构的线框方向垂直的若干个线段,所述线段按照预设间隔进行分布;基于所述补丁结构上按照预设间隔分布的顶点,在所述封闭模型的指定区域所呈现的补丁结构的线框上添加按照预设间隔分布的线段,得到第一中间处理模型数据。9.根据权利要求7所述的方法,其特征在于,所述将所述第二中间处理模型数据投射至所述预设模型上,得到第二中间处理模型,包括:基于在所述封闭模型上所述指定区域的第一顶点法线,在所述封闭模型的模型表面上获取与所述指定区域的第一顶点法线的点重合的中心位置,以所述中心位置获取朝向垂直于所述模型表面的多边形面片;基于所述多边形面片将所述补丁结构的面在所述封闭模型的指定区域进行呈现,得到第二中间处理模型数据。10.一种模型的补丁结构建模装置,其特征在于,所述装置包括:预设模型输入模块,用于响应预设模型的输入指令,将所述预设模型转换为封闭模型;指定区域确定模块,用于确定在所述封闭模型的模型表面上指定生成补丁结构的指定区域;补丁结构获取模块,用于获取所生成的补丁结构和获取所述指定区域的第一顶点法线;目标模型生成模块,用于基于所述指定区域的第一顶点法线和所述封闭模型,将所述补丁结构呈现在所述封闭模型的指定区域,得到具有补丁结构的目标模型。11.一种电子设备,其特征在于,包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至9中任一项所述模型的补丁结构建模方法。12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至9中任一项所述模型的补丁结构建模方法。

技术总结
本发明实施例提供了模型的补丁结构建模方法、装置、设备及存储介质,所述方法包括:响应预设模型的输入指令,将预设模型转换为封闭模型;确定在封闭模型的模型表面上指定生成补丁结构的指定区域;获取所生成的补丁结构和获取指定区域的第一顶点法线;基于指定区域的第一顶点法线和封闭模型,将补丁结构呈现在封闭模型的指定区域,得到具有补丁结构的目标模型。通过对预设模型的输入响应自动生成具有补丁结构的目标模型,基于程序化对模型指定区域生成补丁结构,摆脱传统手动制作的流程,提高在模型中生成补丁结构的生产效率,缩短大量生产所需要的制作周期。产所需要的制作周期。产所需要的制作周期。


技术研发人员:沈忠勇
受保护的技术使用者:网易(杭州)网络有限公司
技术研发日:2023.06.21
技术公布日:2023/9/14
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐