本申请涉及晶格结构生成技术领域,尤其涉及一种晶格结构的模型生成方法和装置。
背景技术:
增材制造是一种利用材料逐层堆积形成零件的制造技术,基于晶格结构的增材制造是利用晶格结构填充零件内部,提高零件强度重量比、节省材料以及赋予零件特殊的机械性能,实现了轻量化零件的制造,在航空航天和汽车工业有重要的应用。
目前,是根据零件的尺寸,使用计算机辅助设计(computeraideddesign,cad)软件或者几何建模内核,构建晶格结构实体模型,再根据晶格结构实体模型,生成对应的标准模板库(standardtemplatelibrary,stl)模型,再根据生成的stl模型进行增材制造。
其中,由于晶格结构实体模型是由各晶格叠加而成,各晶格相互连接的杆在晶格的节点处发生重叠,因此,需要对杆间重叠的部分进行布尔运算,以去掉重叠的部分。但是,布尔运算过程复杂,占用较多的处理资源,造成生成晶格结构实体模型效率低。
技术实现要素:
本申请提供一种晶格结构的模型生成方法和装置,以解决生成晶格结构实体模型效率低的问题。
第一方面,本申请提供一种晶格结构的模型生成方法,包括:
接收模型生成指令,模型生成指令包括目标对象的尺寸;
根据目标对象的尺寸,生成目标对象的晶格线框模型,晶格线框模型包括多个节点和与每个节点连接的多个边;
针对晶格线框模型中每个节点,根据节点,将与节点连接的每个边作为法矢量,分别建立圆轮廓;根据节点对应建立的各圆轮廓,采用点集三角剖分方式,在节点生成节点的凸胞网格;
针对晶格线框模型中每个边,根据边对应建立的两个圆轮廓,采用点集三角剖分方式,在边生成边的杆包围网格,以获得目标对象的晶格结构实体模型,晶格结构实体模型用于目标对象的增材制造。
可选的,根据节点,将与节点连接的每个边作为法矢量,分别建立圆轮廓之前,还包括:
根据晶格结构实体模型中杆的横截面尺寸和与节点连接各边间的最小角度,确定目标距离;
根据节点,将与节点连接的每个边作为法矢量,分别建立圆轮廓,包括:
根据节点,将与节点连接的每个边作为法矢量,在距离节点目标距离的位置分别建立圆轮廓。
可选的,根据晶格结构实体模型中杆的横截面尺寸和与节点连接各边间的最小角度,确定目标距离,包括:
采用公式
其中,dp是圆轮廓相对节点的补偿距离,rrod是晶格结构实体模型中杆的横截面尺寸,θ是节点连接各边间的最小角度,c是大于1的比例因子。
可选的,根据节点对应建立的各圆轮廓,采用点集三角剖分方式,生成节点的凸胞网格之前,还包括:
根据晶格结构实体模型中网格的精度,确定目标数量;
根据节点对应建立的各圆轮廓,采用点集三角剖分方式,生成节点的凸胞网格,包括:
在节点对应的每个圆轮廓上等间距取目标数量个点;
根据每个圆轮廓上目标数量个点,采用点集三角剖分方式,生成节点的凸胞网格。
可选的,根据节点对应建立的各圆轮廓,采用点集三角剖分方式,在节点生成节点的凸胞网格之后,还包括:
用与各圆轮廓重合的平面分别剖切节点的凸胞网格与各圆轮廓重合部分的三角网格,获得剖切后的节点的凸胞网格。
可选的,根据目标对象的尺寸,生成目标对象的晶格线框模型,包括:
根据目标对象的尺寸和晶格的尺寸,确定晶格线框模型在笛卡尔坐标系中3个正交方向向量上的节点数量;
根据晶格线框模型在笛卡尔坐标系中各个正交方向向量上的节点数量,确定各个正交方向向量上的每个节点的坐标;
根据各个正交方向向量上的每个节点的坐标,生成目标对象的晶格线框模型。
可选的,获得目标对象的晶格结构实体模型之后,还包括:
获取目标对象的stl模型;
使用射线与三角形求交算法,根据目标对象的stl模型,裁剪目标对象的晶格结构实体模型,获得目标晶格结构实体模型,目标晶格结构实体模型的形状与目标对象的stl模型的形状相同;
根据目标晶格结构实体模型进行目标对象的增材制造。
第二方面,本申请提供一种晶格结构的模型生成装置,包括:
接收模块,用于接收模型生成指令,模型生成指令包括目标对象的尺寸;
第一生成模块,用于根据目标对象的尺寸,生成目标对象的晶格线框模型,晶格线框模型包括多个节点和与每个节点连接的多个边;
第二生成模块,用于针对晶格线框模型中每个节点,根据节点,将与节点连接的每个边作为法矢量,分别建立圆轮廓;根据节点对应建立的各圆轮廓,采用点集三角剖分方式,在节点生成节点的凸胞网格;
第三生成模块,用于针对晶格线框模型中每个边,根据边对应建立的两个圆轮廓,采用点集三角剖分方式,在边生成边的杆包围网格,以获得目标对象的晶格结构实体模型,晶格结构实体模型用于目标对象的增材制造。
可选的,第二生成模块,还用于:
根据晶格结构实体模型中杆的横截面尺寸和与节点连接各边间的最小角度,确定目标距离;根据节点,将与节点连接的每个边作为法矢量,在距离节点目标距离的位置分别建立圆轮廓。
可选的,第二生成模块,具体用于:
采用公式
其中,dp是圆轮廓相对节点的补偿距离,rrod是晶格结构实体模型中杆的横截面尺寸,θ是节点连接各边间的最小角度,c是大于1的比例因子。
可选的,第二生成模块,还用于:
根据晶格结构实体模型中网格的精度,确定目标数量;在节点对应的每个圆轮廓上等间距取目标数量个点;根据每个圆轮廓上目标数量个点,采用点集三角剖分方式,生成节点的凸胞网格。
可选的,第二生成模块,还用于:
用与各圆轮廓重合的平面分别剖切节点的凸胞网格与各圆轮廓重合部分的三角网格,获得剖切后的节点的凸胞网格。
可选的,第一生成模块,具体用于:
根据目标对象的尺寸和晶格的尺寸,确定晶格线框模型在笛卡尔坐标系中3个正交方向向量上的节点数量;
根据晶格线框模型在笛卡尔坐标系中各个正交方向向量上的节点数量,确定各个正交方向向量上的每个节点的坐标;
根据各个正交方向向量上的每个节点的坐标,生成目标对象的晶格线框模型。
可选的,第三生成模块,还用于:
获取目标对象的stl模型;
使用射线与三角形求交算法,根据目标对象的stl模型,裁剪目标对象的晶格结构实体模型,获得目标晶格结构实体模型,目标晶格结构实体模型的形状与目标对象的stl模型的形状相同;
根据目标晶格结构实体模型进行目标对象的增材制造。
第三方面,本申请提供一种晶格结构的模型生成装置,包括:存储器和处理器;
存储器用于存储程序指令;
处理器用于调用存储器中的程序指令执行如本申请第一方面的晶格结构的模型生成方法。
第四方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序指令,计算机程序指令被执行时,实现如本申请第一方面的晶格结构的模型生成方法。
本申请提供的晶格结构的模型生成方法和装置,通过接收模型生成指令,模型生成指令包括目标对象的尺寸,根据目标对象的尺寸,生成目标对象的晶格线框模型,晶格线框模型包括多个节点和与每个节点连接的多个边,针对晶格线框模型中每个节点,根据节点,将与节点连接的每个边作为法矢量,分别建立圆轮廓,根据节点对应建立的各圆轮廓,采用点集三角剖分方式,在节点生成节点的凸胞网格,针对晶格线框模型中每个边,根据边对应建立的两个圆轮廓,采用点集三角剖分方式,在边生成边的杆包围网格,以获得目标对象的晶格结构实体模型,晶格结构实体模型用于目标对象的增材制造,通过上述方式,能够提高生成晶格结构实体模型的效率,简化了晶格结构实体模型的生成过程,节省了处理资源,进而提高了基于该晶格结构实体模型的增材制造的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例提供的晶格结构的模型生成方法的流程图;
图2为本申请一实施例提供的晶格线框模型的示意图;
图3为本申请一实施例提供的节点的凸胞网格的示意图;
图4为本申请一实施例提供的杆包围网格的示意图;
图5为本申请一实施例提供的晶格结构实体模型的示意图;
图6为本申请一实施例提供的兔子的晶格结构实体模型的示意图;
图7为本申请另一实施例提供的晶格结构的模型生成方法的流程图;
图8为本申请一实施例提供的圆轮廓建立的示意图;
图9为本申请一实施例提供的节点的封闭的三角网格的剖切示意图;
图10(a)为本申请一实施例提供的圆形截面的晶格结构实体模型的示意图;
图10(b)为本申请一实施例提供的六边形截面的晶格结构实体模型的示意图;
图10(c)为本申请一实施例提供的方形截面的晶格结构实体模型的示意图;
图11为本申请一实施例提供的晶格结构的模型生成装置的结构示意图;
图12为本申请另一实施例提供的晶格结构的模型生成装置的结构示意图;
图13为本申请另一实施例提供的晶格结构的模型生成装置的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
基于晶格结构的增材制造是利用晶格结构填充零件内部,实现轻量化零件的制造。目前,是根据零件的尺寸,使用cad软件或者几何建模内核,构建晶格结构实体模型,再根据晶格结构实体模型,生成对应的stl模型,再根据生成的stl模型进行增材制造。其中,由于晶格结构实体模型是由各晶格叠加而成,各晶格相互连接的杆在晶格的节点处发生重叠,因此,需要对杆间重叠的部分进行布尔运算,以去掉重叠的部分。但是,布尔运算过程复杂,占用较多的处理资源,造成生成晶格结构实体模型效率低。
因此,本申请提供一种晶格结构的模型生成方法和装置,通过接收模型生成指令,模型生成指令包括目标对象的尺寸,根据目标对象的尺寸,生成目标对象的晶格线框模型,针对晶格线框模型中每个节点,将与节点连接的每个边作为法矢量,分别建立圆轮廓,根据节点对应建立的各圆轮廓,采用点集三角剖分方式,在节点生成节点的凸胞网格,针对晶格线框模型中每个边,根据边对应建立的两个圆轮廓,采用点集三角剖分方式,生成边的杆包围网格,以获得目标对象的晶格结构实体模型,该晶格结构实体模型用于目标对象的增材制造。通过上述方式,能够提高生成晶格结构实体模型的效率,简化了晶格结构实体模型的生成过程,节省了处理资源,进而提高了基于该晶格结构实体模型的增材制造的效率。
图1为本申请一实施例提供的晶格结构的模型生成方法的流程图,本实施例的方法可以应用于电子设备中,该电子设备可以是终端设备、服务器等,终端设备又例如可以是手机、平板电脑、笔记本电脑、台式电脑等。如图1所示,本实施例的方法包括:
s101、接收模型生成指令,模型生成指令包括目标对象的尺寸。
本实施例中,模型生成指令可以是用户向执行本方法实施例的电子设备输入的,或者,是其它设备向执行本方法实施例的电子设备发送的。模型生成指令包括目标对象的尺寸,例如可以分别用长、宽、高来表示目标对象的尺寸。
s102、根据目标对象的尺寸,生成目标对象的晶格线框模型,晶格线框模型包括多个节点和与每个节点连接的多个边。
本实施例中,已经确定了目标对象的尺寸,因此,根据目标对象的尺寸,生成目标对象的晶格线框模型,晶格线框模型包括多个节点和与每个节点连接的多个边,晶格线框模型的尺寸要大于目标对象的尺寸。
可选的,根据目标对象的尺寸和晶格的尺寸,确定晶格线框模型在笛卡尔坐标系中3个正交方向向量上的节点数量;根据晶格线框模型在笛卡尔坐标系中各个正交方向向量上的节点数量,确定各个正交方向向量上的每个节点的坐标;根据各个正交方向向量上的每个节点的坐标,生成目标对象的晶格线框模型。
本实施例中,已经确定了目标对象的尺寸和晶格的尺寸,晶格的尺寸例如晶格的边长是5mm。因此,根据目标对象的尺寸和晶格的尺寸,确定晶格线框模型在笛卡尔坐标系中3个正交方向向量上的节点数量。具体地,单个晶格用晶格单元表示,晶格单元顶点即晶格单元节点,定义晶格单元顶点拓扑位置v0,以及晶格单元顶点在笛卡尔坐标系3个正交方向向量
例如:定义晶格线框模型在笛卡尔坐标系中3个正交方向向量
根据晶格尺寸、晶格线框模型在笛卡尔坐标系中各个正交方向向量上的节点数量,确定各个正交方向向量上的每个节点的坐标。具体地,定义晶格单元顶点坐标矩阵:
其中向量
max{u,v,w}表示矩阵的最大行数、最大列数。
根据各个正交方向向量上的每个节点的坐标,通过对晶格单元顶点坐标矩阵进行运算快速拼接各晶格单元,构建晶格线框模型。图2为本申请一实施例提供的晶格线框模型的示意图,如图2所示,晶格线框模型包括多个节点和与每个节点连接的多个边。具体地,对晶格单元顶点坐标矩阵进行运算,就是晶格线框模型的增减,比如一个晶格单元的一个顶点是(3,3,3),在该顶点所在的晶格单元上面再增加一个晶格单元,则新增加的晶格单元相对该顶点的顶点所在三个方向向量上的坐标为(3,3,6)。通过对晶格单元顶点坐标矩阵进行运算快速拼接各晶格单元,构建晶格线框模型。
s103、针对晶格线框模型中每个节点,根据节点,将与节点连接的每个边作为法矢量,分别建立圆轮廓;根据节点对应建立的各圆轮廓,采用点集三角剖分方式,在节点生成节点的凸胞网格。
本实施例中,已经确定了晶格线框模型中每个节点的位置、每个节点连接的多个边的位置,因此,根据节点,将与节点连接的每个边作为法矢量,分别建立圆轮廓。具体地,法矢量是垂直于法平面(与节点连接的每个边作为轴线,该轴线垂直的平面)的矢量。节点对应的各圆轮廓建好后,采用点集三角剖分方式,在节点生成节点的凸包网格。具体地,节点的凸包网格为封闭的三角网格,点集三角剖分方式为通过点之间的连线形成三角面片。相应地,可以采用点集三角剖分方式,在节点生成封闭的三角网格。图3为本申请一实施例提供的节点的凸胞网格的示意图,如图3所示,包含多个节点,在每个节点生成了节点的凸胞网格。
s104、针对晶格线框模型中每个边,根据边对应建立的两个圆轮廓,采用点集三角剖分方式,在边生成边的杆包围网格,以获得目标对象的晶格结构实体模型,晶格结构实体模型用于目标对象的增材制造。
本实施例中,已经确定了晶格线框模型中的每个边、根据边对应建立好了两个圆轮廓,因此,采用点集三角剖分方式,在每个边生成边的杆包围网格。具体地,晶格结构线框模型中的每个边上两个相临的圆轮廓构成一对,采用点集三角剖分方式,构造杆包围网格。图4为本申请一实施例提供的杆包围网格的示意图,如图4所示,两端为节点的凸胞网格、中间为杆包围网格。
杆包围网格构造完成后,就获得了目标对象的晶格结构实体模型。图5为本申请一实施例提供的晶格结构实体模型的示意图,如图5所示,在晶格结构实体模型中,在其中一个节点处,包括:3个圆轮廓、1个节点凸包网格、3个杆包围网格。通过这种方式获得的目标对象的晶格结构实体模型,因为所有的网格都是直接堆叠在一起的,所以不需要使用布尔操作。根据该晶格结构实体模型,就可以进行目标对象的增材制造。
可选的,在获得目标对象的晶格结构实体模型之后,获取目标对象的stl模型;使用射线与三角形求交算法,根据目标对象的stl模型,裁剪目标对象的晶格结构实体模型,获得目标晶格结构实体模型,目标晶格结构实体模型的形状与目标对象的stl模型的形状相同;根据目标晶格结构实体模型进行目标对象的增材制造。
本实施例中,已经获得了目标对象的晶格结构实体模型,因此,获取目标对象的stl模型,然后根据输入的目标对象的stl模型,使用射线与三角形求交算法(即空间中一条射线和一个三角面片求交),裁剪目标对象的晶格结构实体模型,即保留目标对象的stl模型和目标对象的晶格结构实体模型这两者重合的部分,去除其他部分,获得目标晶格结构实体模型。该目标晶格结构实体模型的形状与目标对象的stl模型的形状相同。例如:图6为本申请一实施例提供的兔子的晶格结构实体模型的示意图,如图6所示,左边为输入的兔子的stl模型,右边为根据兔子的stl模型进行裁剪后获得的兔子的晶格结构实体模型。获取到目标晶格结构实体模型后,就可以根据该目标晶格结构实体模型进行目标对象的增材制造。
其中,上述目标对象的stl模型可以是用户向执行本方法实施例的电子设备输入的,或者,是其它设备向执行本方法实施例的电子设备发送的。
本申请提供的晶格结构的模型生成方法,通过接收模型生成指令,模型生成指令包括目标对象的尺寸,根据目标对象的尺寸,生成目标对象的晶格线框模型,晶格线框模型包括多个节点和与每个节点连接的多个边,针对晶格线框模型中每个节点,根据节点,将与节点连接的每个边作为法矢量,分别建立圆轮廓;根据节点对应建立的各圆轮廓,采用点集三角剖分方式,在节点生成节点的凸胞网格,针对晶格线框模型中每个边,根据边对应建立的两个圆轮廓,采用点集三角剖分方式,在边生成边的杆包围网格,以获得目标对象的晶格结构实体模型,晶格结构实体模型用于目标对象的增材制造,通过上述方式,能够提高生成晶格结构实体模型的效率,简化了晶格结构实体模型的生成过程,节省了处理资源,进而提高了基于该晶格结构实体模型的增材制造的效率。
在图1所示实施例的基础上,在一些实施例中,图7为本申请另一实施例提供的晶格结构的模型生成方法的流程图,如图7所示,本实施例的方法可以包括:
s701、接收模型生成指令,模型生成指令包括目标对象的尺寸。
s702、根据目标对象的尺寸,生成目标对象的晶格线框模型,晶格线框模型包括多个节点和与每个节点连接的多个边。
本实施例中,s701和s702的具体实现过程可以参见图1所示实施例的相关描述,此处不再赘述。
s703、根据晶格结构实体模型中杆的横截面尺寸和与节点连接各边间的最小角度,确定目标距离。
本实施例中,已经确定了晶格结构实体模型中杆的横截面尺寸、与节点连接各边间的最小角度,因此,确定在与节点连接的每个边上建立圆轮廓时,圆轮廓相对节点的目标距离。圆轮廓目标距离的计算是关键步骤,要求与该圆轮廓相接的所有杆不会相互重叠。
可选的,根据晶格结构实体模型中杆的横截面尺寸和与节点连接各边间的最小角度,确定目标距离,包括:
采用公式
其中,dp是圆轮廓相对节点的目标距离,rrod是晶格结构实体模型中杆的横截面尺寸,θ是节点连接各边间的最小角度,c是大于1的比例因子。
图8为本申请一实施例提供的圆轮廓建立的示意图,如图8所示,一个节点连接了3个边,圆轮廓相对节点的目标距离为dp,每个边上的晶格结构实体模型中杆的横截面尺寸为rrod,与节点连接各边间的角度有θ1、θ2、θ3,根据这三个角度确定节点连接各边间的最小角度θ。例如:普通的立方晶格,各边都是垂直关系,即最小角度θ就是90度,如果是面心立方晶格,最小角度θ就是45度。c是大于1的比例因子,例如为1.1,c要非常接近1,否则会造成与节点连接各边上的圆轮廓距离节点太远,各圆轮廓共同包围出的空间太大,导致生成的节点网格太大。例如:定义c=1.12,rrod=0.5mm,已知θ=90°,则dp=0.55mm。
s704、根据节点,将与节点连接的每个边作为法矢量,在距离节点目标距离的位置分别建立圆轮廓。
本实施例中,已经确定了节点的位置、与节点连接的每个边的位置、圆轮廓相对节点的目标距离,因此,在距离节点目标距离的位置分别建立圆轮廓。例如:定义c=1.12,rrod=0.5mm,已知θ=90°,则dp=0.55mm,对于每一个节点,在距离节点0.55mm处以与节点连接的每个边为法矢量,建立半径为0.5mm的圆轮廓。如图8所示,与节点连接的3个边上,距离节点dp处分别建立了一个圆轮廓。
s705、根据晶格结构实体模型中网格的精度,确定目标数量。
本实施例中,网格精度表示划分的网格数量越多,精度越高,它和在圆轮廓上设置的采样点的数量有关,至少要大于等于3(因为多边形最少有三条边)。根据已经确定的晶格结构实体模型中网格的精度,确定节点对应的每个圆轮廓上设置的采样点的数量。例如:图8中节点对应的每个圆轮廓上设置的采样点的数量为6个。
s706、在节点对应的每个圆轮廓上等间距取目标数量个点。
本实施例中,已经确定了节点对应的每个圆轮廓上采样点的目标数量,因此,在节点对应的每个圆轮廓上等间距取目标数量个点,这些取样点为节点和与每个节点连接的多个边共享,用来构建它们的三角网格。例如:图8中在节点对应的每个圆轮廓上等间距取样6个点。
s707、根据每个圆轮廓上目标数量个点,采用点集三角剖分方式,生成节点的凸胞网格。
本实施例中,已经在节点对应的每个圆轮廓上等间距取了目标数量个点,因此,采用点集三角剖分方式,生成节点的凸胞网格,即在节点生成封闭的三角网格。
s708、用与各圆轮廓重合的平面分别剖切节点的凸胞网格与各圆轮廓重合部分的三角网格,获得剖切后的节点的凸胞网格。
本实施例中,已经在节点生成了封闭的三角网格,因此,用与各圆轮廓重合的平面分别剖切节点的凸胞网格与各圆轮廓重合部分的三角网格,获得剖切后的节点的凸胞网格。图9为本申请一实施例提供的节点的封闭的三角网格的剖切示意图,如图9所示,包括节点的封闭的三角网格剖切前、剖切中、剖切后的示意图,用与圆轮廓重合的平面剖切节点的凸胞网格与各圆轮廓重合部分的三角网格,剖切后节点的凸胞网格与各圆轮廓重合部分不再有三角网格。
s709、针对晶格线框模型中每个边,根据边对应建立的两个圆轮廓,采用点集三角剖分方式,在边生成边的杆包围网格,以获得目标对象的晶格结构实体模型,晶格结构实体模型用于目标对象的增材制造。
本实施例中,s709的具体实现过程可以参见图1所示实施例的相关描述,此处不再赘述。
在上述实施例的基础上,可以通过改变圆轮廓取样点的数量改变晶格结构实体模型的截面形状。图10(a)为本申请一实施例提供的圆形截面的晶格结构实体模型的示意图,如图10(a)所示,展示了圆形截面,表明圆轮廓的取样点非常多,使截面形状近似于圆形。图10(b)为本申请一实施例提供的六边形截面的晶格结构实体模型的示意图,如图10(b)所示,展示了六边形截面,表明圆轮廓的取样点为6个。图10(c)为本申请一实施例提供的方形截面的晶格结构实体模型的示意图,如图10(c)所示,展示了方形截面,表明圆轮廓的取样点为4个。
通过本申请提供的晶格结构的模型生成方法,在生成同一晶格结构实体模型时,例如本申请提供的方法耗时2.7秒,而其他两款主流软件,耗时分别为126秒、600秒。因此,本申请提供的晶格结构的模型生成方法能够大大提高生成晶格结构实体模型的效率。
本申请提供的晶格结构的模型生成方法,通过接收模型生成指令,模型生成指令包括目标对象的尺寸,根据目标对象的尺寸,生成目标对象的晶格线框模型,晶格线框模型包括多个节点和与每个节点连接的多个边,根据晶格结构实体模型中杆的横截面尺寸和与节点连接各边间的最小角度,确定目标距离,根据节点,将与节点连接的每个边作为法矢量,在距离节点目标距离的位置分别建立圆轮廓,根据晶格结构实体模型中网格的精度,确定目标数量,在节点对应的每个圆轮廓上等间距取目标数量个点,根据每个圆轮廓上目标数量个点,采用点集三角剖分方式,生成节点的凸胞网格,用与各圆轮廓重合的平面分别剖切节点的凸胞网格与各圆轮廓重合部分的三角网格,获得剖切后的节点的凸胞网格,针对晶格线框模型中每个边,根据边对应建立的与剖切后的节点的凸胞网格重合的两个圆轮廓,采用点集三角剖分方式,在边生成边的杆包围网格,以获得目标对象的晶格结构实体模型,晶格结构实体模型用于目标对象的增材制造,通过上述方式,能够提高生成晶格结构实体模型的效率,简化了晶格结构实体模型的生成过程,节省了处理资源,进而提高了基于该晶格结构实体模型的增材制造的效率。
图11为本申请一实施例提供的晶格结构的模型生成装置的结构示意图,如图11所示,本实施例的晶格结构的模型生成装置1100包括:接收模块1101、第一生成模块1102、第二生成模块1103、第三生成模块1104。
接收模块1101,用于接收模型生成指令,模型生成指令包括目标对象的尺寸。
第一生成模块1102,用于根据目标对象的尺寸,生成目标对象的晶格线框模型,晶格线框模型包括多个节点和与每个节点连接的多个边。
第二生成模块1103,用于针对晶格线框模型中每个节点,根据节点,将与节点连接的每个边作为法矢量,分别建立圆轮廓;根据节点对应建立的各圆轮廓,采用点集三角剖分方式,在节点生成节点的凸胞网格。
第三生成模块1104,用于针对晶格线框模型中每个边,根据边对应建立的两个圆轮廓,采用点集三角剖分方式,在边生成边的杆包围网格,以获得目标对象的晶格结构实体模型,晶格结构实体模型用于目标对象的增材制造。
在上述任一所示实施例的基础上,第二生成模块1103,还用于:
根据晶格结构实体模型中杆的横截面尺寸和与节点连接各边间的最小角度,确定目标距离;根据节点,将与节点连接的每个边作为法矢量,在距离节点目标距离的位置分别建立圆轮廓。
在上述任一所示实施例的基础上,第二生成模块1103,具体用于:
采用公式
其中,dp是圆轮廓相对节点的补偿距离,rrod是晶格结构实体模型中杆的横截面尺寸,θ是节点连接各边间的最小角度,c是大于1的比例因子。
在上述任一所示实施例的基础上,第二生成模块1103,还用于:
根据晶格结构实体模型中网格的精度,确定目标数量;在节点对应的每个圆轮廓上等间距取目标数量个点;根据每个圆轮廓上目标数量个点,采用点集三角剖分方式,生成节点的凸胞网格。
在上述任一所示实施例的基础上,第二生成模块1103,还用于:
用与各圆轮廓重合的平面分别剖切节点的凸胞网格与各圆轮廓重合部分的三角网格,获得剖切后的节点的凸胞网格。
在上述任一所示实施例的基础上,第一生成模块1102,具体用于:
根据目标对象的尺寸和晶格的尺寸,确定晶格线框模型在笛卡尔坐标系中3个正交方向向量上的节点数量;根据晶格线框模型在笛卡尔坐标系中各个正交方向向量上的节点数量,确定各个正交方向向量上的每个节点的坐标;根据各个正交方向向量上的每个节点的坐标,生成目标对象的晶格线框模型。
在上述任一所示实施例的基础上,第三生成模块1104,还用于:
获取目标对象的stl模型;使用射线与三角形求交算法,根据目标对象的stl模型,裁剪目标对象的晶格结构实体模型,获得目标晶格结构实体模型,目标晶格结构实体模型的形状与目标对象的stl模型的形状相同;根据目标晶格结构实体模型进行目标对象的增材制造。
本实施例的装置,可以用于执行上述任一所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图12为本申请另一实施例提供的晶格结构的模型生成装置的结构示意图,如图12所示,本实施例的晶格结构的模型生成装置1200包括:存储器1201和处理器1202。其中,存储器1201、处理器1202通过总线连接。
存储器1201用于存储程序指令。
处理器1202用于调用存储器中的程序指令执行:
接收模型生成指令,模型生成指令包括目标对象的尺寸。根据目标对象的尺寸,生成目标对象的晶格线框模型,晶格线框模型包括多个节点和与每个节点连接的多个边。针对晶格线框模型中每个节点,根据节点,将与节点连接的每个边作为法矢量,分别建立圆轮廓;根据节点对应建立的各圆轮廓,采用点集三角剖分方式,在节点生成节点的凸胞网格。针对晶格线框模型中每个边,根据边对应建立的两个圆轮廓,采用点集三角剖分方式,在边生成边的杆包围网格,以获得目标对象的晶格结构实体模型,晶格结构实体模型用于目标对象的增材制造。
在上述任一所示实施例的基础上,处理器1202,还用于:
根据晶格结构实体模型中杆的横截面尺寸和与节点连接各边间的最小角度,确定目标距离;根据节点,将与节点连接的每个边作为法矢量,在距离节点目标距离的位置分别建立圆轮廓。
在上述任一所示实施例的基础上,处理器1202,具体用于:
采用公式
其中,dp是圆轮廓相对节点的补偿距离,rrod是晶格结构实体模型中杆的横截面尺寸,θ是节点连接各边间的最小角度,c是大于1的比例因子。
在上述任一所示实施例的基础上,处理器1202,还用于:
根据晶格结构实体模型中网格的精度,确定目标数量;在节点对应的每个圆轮廓上等间距取目标数量个点;根据每个圆轮廓上目标数量个点,采用点集三角剖分方式,生成节点的凸胞网格。
在上述任一所示实施例的基础上,处理器1202,还用于:
用与各圆轮廓重合的平面分别剖切节点的凸胞网格与各圆轮廓重合部分的三角网格,获得剖切后的节点的凸胞网格。
在上述任一所示实施例的基础上,处理器1202,具体用于:
根据目标对象的尺寸和晶格的尺寸,确定晶格线框模型在笛卡尔坐标系中3个正交方向向量上的节点数量;根据晶格线框模型在笛卡尔坐标系中各个正交方向向量上的节点数量,确定各个正交方向向量上的每个节点的坐标;根据各个正交方向向量上的每个节点的坐标,生成目标对象的晶格线框模型。
在上述任一所示实施例的基础上,处理器1202,还用于:
获取目标对象的stl模型;使用射线与三角形求交算法,根据目标对象的stl模型,裁剪目标对象的晶格结构实体模型,获得目标晶格结构实体模型,目标晶格结构实体模型的形状与目标对象的stl模型的形状相同;根据目标晶格结构实体模型进行目标对象的增材制造。
本实施例的装置,可以用于执行上述任一所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图13为本申请另一实施例提供的晶格结构的模型生成装置的结构示意图,如图13所示,例如,晶格结构的模型生成装置1300可以被提供为一服务器或计算机。参照图13,装置1300包括处理组件1301,其进一步包括一个或多个处理器,以及由存储器1302所代表的存储器资源,用于存储可由处理组件1301的执行的指令,例如应用程序。存储器1302中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1301被配置为执行指令,以执行上述任一方法实施例。
装置1300还可以包括一个电源组件1303被配置为执行装置1300的电源管理,一个有线或无线网络接口1304被配置为将装置1300连接到网络,和一个输入输出(i/o)接口1305。装置1300可以操作基于存储在存储器1302的操作系统,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm或类似。
本申请还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现如上晶格结构的模型生成方法。
上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(applicationspecificintegratedcircuits,简称:asic)中。当然,处理器和可读存储介质也可以作为分立组件存在于晶格结构的模型生成装置中。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
1.一种晶格结构的模型生成方法,其特征在于,包括:
接收模型生成指令,所述模型生成指令包括目标对象的尺寸;
根据所述目标对象的尺寸,生成所述目标对象的晶格线框模型,所述晶格线框模型包括多个节点和与每个节点连接的多个边;
针对所述晶格线框模型中每个节点,根据所述节点,将与所述节点连接的每个边作为法矢量,分别建立圆轮廓;根据所述节点对应建立的各圆轮廓,采用点集三角剖分方式,在所述节点生成所述节点的凸胞网格;
针对所述晶格线框模型中每个边,根据所述边对应建立的两个圆轮廓,采用点集三角剖分方式,在所述边生成所述边的杆包围网格,以获得所述目标对象的晶格结构实体模型,所述晶格结构实体模型用于所述目标对象的增材制造。
2.根据权利要求1所述的方法,其特征在于,所述根据所述节点,将与所述节点连接的每个边作为法矢量,分别建立圆轮廓之前,还包括:
根据所述晶格结构实体模型中杆的横截面尺寸和与所述节点连接各边间的最小角度,确定目标距离;
所述根据所述节点,将与所述节点连接的每个边作为法矢量,分别建立圆轮廓,包括:
根据所述节点,将与所述节点连接的每个边作为法矢量,在距离所述节点目标距离的位置分别建立圆轮廓。
3.根据权利要求2所述的方法,其特征在于,所述根据所述晶格结构实体模型中杆的横截面尺寸和与所述节点连接各边间的最小角度,确定目标距离,包括:
采用公式
其中,dp是圆轮廓相对节点的目标距离,rrod是所述晶格结构实体模型中杆的横截面尺寸,θ是所述节点连接各边间的最小角度,c是大于1的比例因子。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述节点对应建立的各圆轮廓,采用点集三角剖分方式,生成所述节点的凸胞网格之前,还包括:
根据晶格结构实体模型中网格的精度,确定目标数量;
所述根据所述节点对应建立的各圆轮廓,采用点集三角剖分方式,生成所述节点的凸胞网格,包括:
在所述节点对应的每个所述圆轮廓上等间距取目标数量个点;
根据每个圆轮廓上目标数量个点,采用点集三角剖分方式,生成所述节点的凸胞网格。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述节点对应建立的各圆轮廓,采用点集三角剖分方式,在所述节点生成所述节点的凸胞网格之后,还包括:
用与各圆轮廓重合的平面分别剖切所述节点的凸胞网格与各圆轮廓重合部分的三角网格,获得剖切后的节点的凸胞网格。
6.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述目标对象的尺寸,生成所述目标对象的晶格线框模型,包括:
根据所述目标对象的尺寸和晶格的尺寸,确定所述晶格线框模型在笛卡尔坐标系中3个正交方向向量上的节点数量;
根据所述晶格线框模型在笛卡尔坐标系中各个正交方向向量上的节点数量,确定各个正交方向向量上的每个节点的坐标;
根据各个正交方向向量上的每个节点的坐标,生成所述目标对象的晶格线框模型。
7.根据权利要求1-3任一项所述的方法,其特征在于,所述获得所述目标对象的晶格结构实体模型之后,还包括:
获取所述目标对象的标准模板库stl模型;
使用射线与三角形求交算法,根据所述目标对象的stl模型,裁剪所述目标对象的晶格结构实体模型,获得目标晶格结构实体模型,所述目标晶格结构实体模型的形状与所述目标对象的stl模型的形状相同;
根据所述目标晶格结构实体模型进行所述目标对象的增材制造。
8.一种晶格结构的模型生成装置,其特征在于,包括:
接收模块,用于接收模型生成指令,所述模型生成指令包括目标对象的尺寸;
第一生成模块,用于根据所述目标对象的尺寸,生成所述目标对象的晶格线框模型,所述晶格线框模型包括多个节点和与每个节点连接的多个边;
第二生成模块,用于针对所述晶格线框模型中每个节点,根据所述节点,将与所述节点连接的每个边作为法矢量,分别建立圆轮廓;根据所述节点对应建立的各圆轮廓,采用点集三角剖分方式,在所述节点生成所述节点的凸胞网格;
第三生成模块,用于针对所述晶格线框模型中每个边,根据所述边对应建立的两个圆轮廓,采用点集三角剖分方式,在所述边生成所述边的杆包围网格,以获得所述目标对象的晶格结构实体模型,所述晶格结构实体模型用于所述目标对象的增材制造。
9.一种晶格结构的模型生成装置,其特征在于,包括:存储器和处理器;
所述存储器用于存储程序指令;
所述处理器用于调用所述存储器中的程序指令执行如权利要求1-7任一项所述的晶格结构的模型生成方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序指令,所述计算机程序指令被执行时,实现如权利要求1至7任一项所述的晶格结构的模型生成方法。
技术总结