排溢孔的生成方法、终端及存储介质

文档序号:1359561 发布日期:2020-07-28 浏览:34次 >En<

阅读说明:本技术 排溢孔的生成方法、终端及存储介质 (Generation method of drainage hole, terminal and storage medium ) 是由 陈冬灵 杨英保 吴刚 曹龙飞 于 2020-04-10 设计创作,主要内容包括:本发明公开了一种排溢孔的生成方法、终端及存储介质,所述方法包括:根据牙弓模型的包围盒的第一中心点、牙尖方向和第一预设偏移距离,获得第二中心点;以第二中心点为起点构建n条第一射线;将第一射线与牙弓模型的外壁面的交点作为第一交点;以第一交点为起点,沿外壁面在第一交点处的法线负方向构建第二射线;获取第二射线与牙弓模型内壁面交点中距第一交点最近的交点,作为第二交点;以第一预设半径,构建贯穿牙弓模型内壁面和外壁面的第一圆柱体;对牙弓模型与第一圆柱体作布尔运算差集处理,生成排溢孔。本发明解决了现有牙科三维设计软件中为牙弓模型生成的排溢孔大小形状是固定的,导致部分排溢孔不能起到排溢作用的问题。(The invention discloses a generation method of a drainage hole, a terminal and a storage medium, wherein the method comprises the following steps: obtaining a second central point according to a first central point of a bounding box of the dental arch model, the direction of a dental cusp and a first preset offset distance; constructing n first rays by taking the second central point as a starting point; taking the intersection point of the first ray and the outer wall surface of the dental arch model as a first intersection point; constructing a second ray along the negative direction of the normal of the outer wall surface at the first intersection point by taking the first intersection point as a starting point; acquiring an intersection point which is closest to the first intersection point and is positioned between the second ray and the inner wall surface of the dental arch model as a second intersection point; constructing a first cylinder penetrating through the inner wall surface and the outer wall surface of the dental arch model according to a first preset radius; and performing Boolean operation difference set processing on the dental arch model and the first cylinder to generate a drainage hole. The invention solves the problem that the size and the shape of the drainage holes generated for the dental arch model in the existing dental three-dimensional design software are fixed, so that part of the drainage holes can not play a drainage role.)

排溢孔的生成方法、终端及存储介质

技术领域

本发明涉及计算机辅助设计领域,尤其涉及一种排溢孔的生成方法、终端及计算机可读存储介质。

背景技术

为了节约打印的材料,一般在设计牙弓模型时,会将牙弓模型的底部设置有一个开口的腔室,但根据底部设置开口的腔室的牙弓模型进行牙弓打印时,是先从牙弓模型的底部开始进行打印,这就会导致牙弓模型底部与打印盘接触后,会将原先设计的开口腔室封闭起来,形成了一个封闭空间,该封闭空间中会堆积打印材料导致打印材料的浪费,为解决这个问题,需要在牙弓模型上开设排溢孔,以排出打印过程中堆积的打印材料。而现有牙弓模型的数字建模过程中,在为牙弓模型构建的排溢孔大小形状是固定的,导致牙弓模型中比较厚外壁处排溢孔不能贯穿连接中空部分,从而使得打印牙弓过程中的排溢孔不能起到排溢作用,最终降低了整体排溢效果。

发明内容

本发明的主要目的在于提出一种排溢孔的生成方法、终端及计算机可读存储介质,旨在解决现有牙弓模型的数字建模过程中,构建的排溢孔大小形状固定,导致打印牙弓过程中部分排溢孔不能起到排溢作用的问题。

为实现上述目的,本发明提供一种排溢孔的生成方法,包括步骤:

获取牙弓模型的包围盒的第一中心点和牙弓模型的牙尖方向;

第一中心点沿牙尖方向的负方向偏移第一预设偏移距离,获得第二中心点;

以第二中心点为起点,构建至少一条与所述牙弓模型的外壁面相交的第一射线,其中,第一中心点和第二中心点的连线与第一射线垂直;

获取第一射线与牙弓模型的外壁面的交点,作为第一交点;

以第一交点为起点,沿外壁面在第一交点处的法线负方向构建第二射线;

获取第二射线与牙弓模型内壁面的交点中距第一交点最近的交点,作为第二交点;

以第一预设半径,构建贯穿牙弓模型内壁面和外壁面的第一圆柱体,其中第一交点和第二交点在第一圆柱体的中轴线上;

将牙弓模型与构建的第一圆柱体做布尔运算差集处理,以在牙弓模型上生成排溢孔。

可选地,所述以第二中心点为起点,构建至少一条与所述牙弓模型的外壁面相交的第一射线的步骤包括:

以第二中心点为起点,构建n条检测射线,其中,相邻两条检测射线间的夹角为360°/n,10≤n≤40,第一中心点和第二中心点的连线与检测射线垂直;

判断各检测射线是否均与牙弓模型的外壁面相交;

若是,则将检测射线设置为第一射线;

若否,则以第二中心点为起点,重新构建2n条检测射线,其中,相邻两条检测射线间的夹角为180°/n,10≤n≤40,第一中心点和第二中心点的连线与检测射线垂直;

将与牙弓模型的外壁面相交的检测射线设置为第一射线。

可选地,所述将牙弓模型与构建的第一圆柱体做布尔运算差集处理,以在牙弓模型上生成排溢孔的步骤之前还包括:

获取与牙弓模型匹配的代型模型,并获取所述代型模型的包围盒的第三中心点;

以第三中心点为起点,构建m条与牙弓模型相交的第三射线,其中,第三射线与牙尖方向垂直,且相邻两条第三射线间的夹角为360°/m,4≤m≤40;

获取第三射线与牙弓模型外壁面的交点,作为第三交点;

选择与第三中心点间距最小的第三交点为定位孔标记点;

获取定位孔标记点所在第三射线与牙弓模型内壁面的交点,作为第四交点;

根据定位孔标记点、第三中心点、第四交点和第二预设半径,构建第二圆柱体,其中,定位孔标记点为第二圆柱体的第一端面圆心,定位孔标记点、第四交点、第二圆柱体的第二端面圆心和第三中心点处于同一直线上并依次间隔排列;

所述将牙弓模型与构建的第一圆柱体做布尔运算差集处理,以在牙弓模型上生成排溢孔的步骤包括:

将牙弓模型分别与构建的第一圆柱体、构建的第二圆柱体做布尔运算差集处理,以在牙弓模型上对应生成排溢孔和定位孔。

可选地,所述以第一预设半径,构建贯穿牙弓模型内壁面和外壁面的第一圆柱体,其中第一交点和第二交点在第一圆柱体的中轴线上的步骤之后还包括:

获取到用户触发的新增指令,所述新增指令包括用户在牙弓模型的外壁面或内壁面上选择的新增点;

以新增点为起点,沿牙弓模型表面在新增点处的法线负方向构建第四射线;

获取第四射线与牙弓模型表面的交点,并将第四射线与牙弓模型表面的交点中距新增点最近的交点,作为第五交点;

以第一预设半径,构建贯穿牙弓模型内壁面和外壁面的新增第一圆柱体,其中新增点和第五交点在新增第一圆柱体的中轴线上。

可选地,所述根据第一交点、第二交点、第二预设偏移距离和第一预设半径,构建第一圆柱体的步骤之后包括:

获取到用户触发的删除指令,所述删除指令包括用户选择的第一圆柱体;

删除用户选择的第一圆柱体。

可选地,所述根据第一交点、第二交点、第二预设偏移距离和第一预设半径,构建第一圆柱体的步骤之后包括:

获取到用户触发的半径调整指令,所述半径调整指令包括用户选择的第一圆柱体和用户输入的调整半径;

将用户选择的第一圆柱体的半径调整为用户输入的调整半径。

可选地,所述根据第一交点、第二交点、第二预设偏移距离和第一预设半径,构建第一圆柱体的步骤之后包括:

获取到用户触发的位置调整指令,所述位置调整指令包括用户选择的第一圆柱体、以及用户在牙弓模型内壁面或外壁面上选择的位置调整点;

以位置调整点为起点,沿牙弓模型表面在位置调整点处的法线负方向构建第五射线;

获取第五射线与牙弓模型表面的交点,并将第五射线与牙弓模型表面的交点中距位置调整点最近的交点,作为第六交点;

以第一预设半径,构建贯穿牙弓模型内壁面和外壁面的位置调整后第一圆柱体,其中位置调整点和第六交点在位置调整后第一圆柱体的中轴线上;

删除用户选择的第一圆柱体。

可选地,所述根据第一交点、第二交点、第二预设偏移距离和第一预设半径,构建第一圆柱体的步骤之后包括:

获取到用户触发的方向调整指令,所述方向调整指令包括用户选择的第一圆柱体和用户在牙弓模型外壁面上选择的方向调整点;

获取用户选择的第一圆柱体的中轴线与牙弓模型的内壁面的交点,作为第七交点;

以第一预设半径,构建贯穿牙弓模型内壁面和外壁面的方向调整后第一圆柱体,其中方向调整点和第七交点在方向调整后第一圆柱体的中轴线上;

删除用户选择的第一圆柱体。

为实现上述目的,本发明还提供一种终端,所述终端包括存储器、处理器和存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的排溢孔的生成方法的步骤。

为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的排溢孔的生成方法的步骤。

本发明提出的一种排溢孔的生成方法、终端及计算机可读存储介质,通过获取牙弓模型的包围盒的第一中心点和牙弓模型的牙尖方向;第一中心点沿牙尖方向的负方向偏移第一预设偏移距离,获得第二中心点;以第二中心点为起点,构建n条第一射线,其中,第一中心点和第二中心点的连线与第一射线垂直,且相邻两条第一射线间的夹角为360°/n,10≤n≤40;获取第一射线与牙弓模型的外壁面的交点,作为第一交点,其中,所述外壁面包括牙弓模型的唇侧面、舌侧面和颊侧面;以第一交点为起点,沿外壁面在第一交点处的法线负方向构建第二射线;获取第二射线与牙弓模型的交点中距第一交点最近的交点,作为第二交点;根据第一交点、第二交点、第二预设偏移距离和第一预设半径,构建第一圆柱体,其中,第一圆柱体的第一端面圆心、第一交点、第二交点和第一圆柱体的第二端面圆心处于同一直线上并依次间隔排列,第一圆柱体的第一端面圆心与第一交点间距离和第二交点与第二圆柱体的第二端面圆心间距离均为第二预设偏移距离;将牙弓模型与构建的第一圆柱体做布尔运算差集处理,以在牙弓模型上生成排溢孔。由于牙弓模型中不同位置处的非中空部分的厚度也不同,而当前三维软件设计中,生成的每个排溢孔的轴向长度都是相同的,在非中空部分厚度比较厚的位置,生成的排溢孔可能没有贯穿非中空部分,导致该处的排溢孔并不能起到排溢作用,影响最终的排溢效果,而本发明在生成排溢孔过程中的第一交点处于排溢孔所在位置的非中空部分中背离中空部分的侧面上,第二交点刚好位于排溢孔所在位置的非中空部分中与中空部分接触的侧面,即第一交点和第二交点连线长度刚好等于该位置处的非中空部分的厚度,并且第一交点和第二交点又位于生成的圆柱体的轴线上,因此生成的圆柱体肯定贯穿了该位置处的非中空部分,最终生成的排溢孔的也肯定贯穿了排溢孔所在的非中空部分,故本方案生成的排溢孔的轴向长度是不固定的,是根据所在位置的非中空部分的厚度决定的,生成的排溢孔都能贯穿所在位置处的非中空部分,避免了在牙弓模型上生成不能贯穿非中空部分的排溢孔导致在打印牙弓模型的过程中排溢效果降低的问题。

附图说明

图1是本发明实施例方案涉及的硬件运行环境的结构示意图;

图2为本发明排溢孔的生成方法第一实施例的流程示意图;

图3为本发明排溢孔的生成方法第二实施例中步骤S30的细化流程示意图;

图4为本发明排溢孔的生成方法第三实施例的流程示意图;

图5为本发明已安装了代型模型的牙弓模型的仰视图;

图6为本发明已安装了代型模型的牙弓模型的轴视图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

请参照图1,图1为本发明各个实施例中所提供的终端的硬件结构示意图。所述终端包括通信模块01、存储器02及处理器03等部件。本领域技术人员可以理解,图1中所示出的终端还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中,所述处理器03分别与所述存储器02和所述通信模块01连接,所述存储器02上存储有计算机程序,所述计算机程序同时被处理器03执行。

通信模块01,可通过网络与外部设备连接。通信模块01可以接收外部设备发出的数据,还可发送数据、指令及信息至所述外部设备,所述外部设备可以是手机、平板电脑、笔记本电脑和台式电脑等电子设备。

存储器02,可用于存储软件程序以及各种数据。存储器02可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(构建第一射线)等;存储数据区可存储根据终端的使用所创建的数据或信息等。此外,存储器02可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

处理器03,是终端的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器02内的软件程序和/或模块,以及调用存储在存储器02内的数据,执行终端的各种功能和处理数据,从而对终端进行整体监控。处理器03可包括一个或多个处理单元;优选的,处理器03可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器03中。

尽管图1未示出,但上述终端还可以包括电路控制模块,电路控制模块用于与市电连接,实现电源控制,保证其他部件的正常工作。

本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

根据上述硬件结构,提出本发明方法各个实施例。

参照图2,在本发明排溢孔的生成方法的第一实施例中,所述排溢孔的生成方法包括步骤:

步骤S10,获取牙弓模型的包围盒的第一中心点和牙弓模型的牙尖方向;

在本方案中,牙弓模型可以是三维网格模型,也可以是三维壳体模型、三维实体模型等,当牙弓模型为三维网格模型时,网格面片可以为三角网格面片,也可以为四边形网格面片。该牙弓模型可以为上颚牙弓模型,也可以为下颚牙弓模型,终端根据用户输入或构建的牙弓模型,可以获取该牙弓模型的牙尖方向,牙尖方向即指牙齿的咬合方向。参照图5和图6,打印得到的牙弓包括两相对设置的侧壁100,以及连接两侧壁的连接壁200,两侧壁100和连接壁200在牙弓底部围成一个具有开口的腔室300,开口方向为牙尖方向的负方向。在本发明中,牙弓模型的内壁面与打印得到的牙弓形成具有开口的腔室的表面相对应,牙弓模型的外壁面为侧壁或连接壁中与内壁面相对的表面。

包围盒是一种求解离散点集最优包围空间的算法,基本思想是用体积稍大且特性简单的几何体(称为包围盒)来近似地代替复杂的几何对象。为牙弓模型生成包围盒既可以是AABB包围盒(Axis-aligned bounding box,轴平行包围盒),也可以是OBB包围盒(Oriented bounding box,方向包围盒)。为牙弓模型生成包围盒后,可以获取该包围盒的中心点,称为第一中心点。

需要说明的是,终端可以为台式电脑,也可以为平板电脑或笔记本电脑。

步骤S20,第一中心点沿牙尖方向的负方向偏移第一预设偏移距离,获得第二中心点;

终端获取到包围盒的第一中心点后,会将第一中心点沿着与牙尖方向的负方向偏移第一预设偏移距离,获得第二中心点,其中第一预设偏移距离为4~6mm,本方案优选为5mm。

步骤S30,以第二中心点为起点,构建至少一条与所述牙弓模型的外壁面相交的第一射线,其中,第一中心点和第二中心点的连线与第一射线垂直;

以第二中心点为起点,构建n条第一射线,其中,第一中心点和第二中心点的连线与第一射线垂直,且相邻两条第一射线间的夹角为360°/n,10≤n≤40;

终端将以第二中心点为起点,构建至少一条第一射线,第一中心点和第二中心点的连线与构建的每条第一射线垂直,也就是,第一中心点和第二中心点的连线与构建的第一射线垂直。

由于构建射线数量过少的话,可能构建的第一射线都没有与牙弓模型的外壁面相交,为了确保构建的第一射线与牙弓模型的外壁面上相交的点能够均匀分布,终端可以以第二中心点为起点,构建n条第一射线,其中,第一中心点和第二中心点的连线与第一射线垂直,且相邻两条第一射线间的夹角为360°/n,10≤n≤40,本方案中n值优选20。

步骤S40,获取第一射线与牙弓模型的外壁面的交点,作为第一交点;

若第二中心点位置处于牙弓模型中,那么终端创建的n条第一射线可能全部与牙弓模型相交,若第二中心点位置处于牙弓模型外,有可能部分第一射线与牙弓模型相交,终端创建至少一条第一射线后,获取第一射线与牙弓模型的外壁面的交点,称为第一交点。

步骤S50,以第一交点为起点,沿外壁面在第一交点处的法线负方向构建第二射线;

获取第一交点后,获取外壁面在第一交点处的法线负方向,然后以该法线负方向构建第二射线。当牙弓模型为三维网格模型时,牙弓模型的内壁面和外壁面是由多个牙弓网格面片组成。获取第一交点所在的牙弓网格面片,然后以第一交点为起点,沿第一交点所在的牙弓网格面片的法线负方向构建第二射线。牙弓网格面的法线负方向是指垂直于牙弓网格面指向牙弓模型的网格面所包围的内部的方向,牙弓网格面的法线正方向是指垂直于牙弓网格面背离牙弓模型的网格面所包围的内部的方向。

步骤S60,获取第二射线与牙弓模型内壁面的交点中距第一交点最近的交点,作为第二交点;

第二射线与牙弓模型相交会存在多个交点,该交点不包括第二射线的起点,即不包括第一交点。终端会获取第二射线与牙弓模型的交点中距第一交点最近的交点,称为第二交点。

步骤S70,以第一预设半径,构建贯穿牙弓模型内壁面和外壁面的第一圆柱体,其中第一交点和第二交点在第一圆柱体的中轴线上;

终端在获取到第一交点和第二交点后,会构建一个以第一预设半径为半径的第一圆柱体,该第一圆柱体贯穿外壁面和内壁面,并且第一交点和第二交点在第一圆柱体的中轴线上。为了防止构建的第一圆柱体过长最终形成的排溢孔会影响牙弓模型的结构稳定性和力学性能,可以预先设置一个第二预设偏移距离,终端根据第一交点、第二交点、第二预设偏移距离和第一预设半径,构建第一圆柱体,其中,第一圆柱体的第一端面圆心、第一交点、第二交点和第一圆柱体的第二端面圆心处于同一直线上并依次间隔排列,第一圆柱体的第一端面圆心与第一交点间距离和第二交点与第二圆柱体的第二端面圆心间距离均为第二预设偏移距离。第二预设偏移距离为2~4mm,本实施例中,优选第二预设偏移距离为3mmm。

构建第一圆柱体的具体过程可以为:第一交点沿着第一交点和第二交点的连线背离第二交点的方向偏移第二预设偏移距离,获得第一圆柱体的第一端面的圆心;第二交点沿着第一交点和第二交点的连线背离第一交点的方向偏移第二预设偏移距离,获得第一圆柱体的第二端面的圆心;然后以第一端面的圆心和第二端面的圆心以及预设的半径,构建第一圆柱体。

构建第一圆柱体的具体过程还可以为:以第一交点作为初始第一圆柱体的第一端面的圆心,以第二交点作为初始第一圆柱体的第二端面的圆心,然后以第一交点和第二交点以及预设的半径,构建初始第一圆柱体,然后将初始第一圆柱体的第一端面沿轴线背离第二端面的方向拉伸第二预设偏移距离,将初始第一圆柱体的第二端面沿轴线背离第一端面的方向拉伸第二预设偏移距离,获得第一圆柱体。

步骤S80,将牙弓模型与构建的第一圆柱体做布尔运算差集处理,以在牙弓模型上生成排溢孔;

终端在牙弓模型上构建好第一圆柱体后,将牙弓模型与构建的第一圆柱体做布尔运算差集处理,从而在牙弓模型上生成排溢孔。

本实例通过获取牙弓模型的包围盒的第一中心点和牙弓模型的牙尖方向;第一中心点沿牙尖方向的负方向偏移第一预设偏移距离,获得第二中心点;以第二中心点为起点,构建至少一条与所述牙弓模型的外壁面相交的第一射线,其中,第一中心点和第二中心点的连线与第一射线垂直;获取第一射线与牙弓模型的外壁面的交点,作为第一交点;以第一交点为起点,沿外壁面在第一交点处的法线负方向构建第二射线;获取第二射线与牙弓模型内壁面的交点中距第一交点最近的交点,作为第二交点;以第一预设半径,构建贯穿牙弓模型内壁面和外壁面的第一圆柱体,其中第一交点和第二交点在第一圆柱体的中轴线上;将牙弓模型与构建的第一圆柱体做布尔运算差集处理,以在牙弓模型上生成排溢孔。由于牙弓模型中不同位置处的非中空部分的厚度也不同,而当前三维软件设计中,生成的每个排溢孔的轴向长度都是相同的,在非中空部分厚度比较厚的位置,生成的排溢孔可能没有贯穿非中空部分,导致该处的排溢孔并不能起到排溢作用,影响最终的排溢效果,而本发明在生成排溢孔过程中的第一交点处于排溢孔所在位置的非中空部分中背离中空部分的侧面上,第二交点刚好位于排溢孔所在位置的非中空部分中与中空部分接触的侧面,即第一交点和第二交点连线长度刚好等于该位置处的非中空部分的厚度,并且第一交点和第二交点又位于生成的第一圆柱体的轴线上,因此生成的第一圆柱体肯定贯穿了该位置处的非中空部分,最终生成的排溢孔的也肯定贯穿了排溢孔所在的非中空部分,故本方案生成的排溢孔的轴向长度是不固定的,是根据所在位置的非中空部分的厚度决定的,生成的排溢孔都能贯穿所在位置处的非中空部分,避免了在牙弓模型上生成不能贯穿非中空部分的排溢孔导致在打印牙弓模型的过程中排溢效果降低的问题。

进一步地,请参照图3,图3为根据本申请排溢孔的生成方法的第一实施例提出本申请排溢孔的生成方法的第二实施例,在本实施例中,步骤S30包括:

步骤S31,以第二中心点为起点,构建n条检测射线,其中,相邻两条检测射线间的夹角为360°/n,10≤n≤40,第一中心点和第二中心点的连线与检测射线垂直;

步骤S32,判断各检测射线是否均与牙弓模型的外壁面相交;若是,则执行步骤S33;若否,则执行步骤S34;

步骤S33,将检测射线设置为第一射线;

步骤S34,以第二中心点为起点,重新构建2n条检测射线,其中,相邻两条检测射线间的夹角为180°/n,10≤n≤40,第一中心点和第二中心点的连线与检测射线垂直;

步骤S35,将与牙弓模型的外壁面相交的检测射线设置为第一射线。

由于构建的牙弓模型可能存在不同的形态,导致牙弓模型的包围盒的第一中心点可能位于牙弓模型里,也有可能位于牙弓模型外,若位于牙弓模型外,构建的第一射线中有部分数量的第一射线可能不能与牙弓模型相交,则会导致在牙弓模型上最终生成的排溢孔数量降低。为了避免出现这个问题,先构建出n条检测射线,其中,相邻两条检测射线间的夹角为360°/n,10≤n≤40,第一中心点和第二中心点的连线与检测射线垂直;然后判断各检测射线是否均与牙弓模型相交,若n条检测射线都与牙弓模型相交,则将各检测射线作为第一射线;若n条检测射线并不是都与牙弓模型相交,则将检测射线的构建数量加倍,即以第二中心点为起点,重新构建2n条检测射线,其中,第一中心点和二中心点的连线与检测射线垂直,且相邻两条第一射线间的夹角为180°/n,10≤n≤40,最后将与牙弓模型的外壁面相交的检测射线设置为第一射线。

本实施例通过判断检测射线与牙弓模型的相交情况,来确定牙弓模型形态,根据形态来确定是否需要增加构建的检测射线的数量,确保射线与牙弓模型外壁面相交的点数量足够,即确保最终形成的排溢孔数量足够。

进一步地,请参照图4,图4为根据本申请排溢孔的生成方法的前述实施例提出本申请排溢孔的生成方法的第三实施例,在本实施例中,步骤S80之前包括:

步骤S90,获取与牙弓模型匹配的代型模型,并获取所述代型模型的包围盒的第三中心点;

步骤S100,以第三中心点为起点,构建m条第三射线,其中,第三射线与牙尖方向垂直,且相邻两条第三射线间的夹角为360°/m,10≤m≤40;

步骤S110,获取第三射线与牙弓模型外壁面的交点,作为第三交点;

步骤S120,选择与第三中心点间距最小的第三交点为定位孔标记点;

步骤S130,获取定位孔标记点所在第三射线与牙弓模型内壁面的交点,作为第四交点;

步骤S140,根据定位孔标记点、第三中心点、第四交点和第二预设半径,构建第二圆柱体,其中,定位孔标记点为第二圆柱体的第一端面圆心,定位孔标记点、第四交点、第二圆柱体的第二端面圆心和第三中心点处于同一直线上并依次间隔排列;

在本实施例中,参照图5和图6,在根据牙弓模型打印出来的牙弓以及根据与牙弓模型匹配的代型模型打印出来的义齿500后,义齿500通过牙弓上的安装孔400安装在牙弓上,但为了能够确保义齿500安装到位,通过在牙弓和义齿500上设置定位孔,故需在设计的牙弓模型和与牙弓模型匹配的代型模型上设置定位孔。在设计过程中,构建定位孔之前,会将与牙弓模型匹配的代型模型虚拟安装在牙弓模型的对应位置。终端为代型模型生成包围盒,该包围盒既可以是AABB包围盒(Axis-aligned bounding box,轴平行包围盒),也可以是OBB包围盒(Oriented bounding box,方向包围盒),然后终端会获取代型模型的包围盒的中心的,称为第三中心点。

终端将以第三中心点为起点,构建m条第三射线,每条第三射线都与牙尖方向垂直,也就是,构建的m条第三射线处于同一平面,第三中心点位于该平面上,并且该平面垂直于牙尖方向,相邻两条第三射线间的夹角为360°/m,m可以与n相同也可以不同,m的取值范围为10~40。本方案中m值优选20。

m条第三射线与牙弓模型的外壁面相交会存在m个交点。终端会获取各条第三射线与牙弓模型外壁面交点,作为第三交点。

终端在确定各第三射线上的第三交点后,会获取各第三交点距第三中心点之间的距离,然后选择与第三中心点间距离最小的第三交点作为定位孔标记点,终端接着会获取定位孔标记点所在的第三射线与牙弓模型内壁面的交点,作为第四交点,第四交点必定处于代型模型与牙弓模型相接触的表面上,最后终端会根据定位孔标记点、第三中心点、第四交点和用户预先设置第二预设半径,构建第二圆柱体,其中定位孔标记点为第二圆柱体的第一端面圆心,定位孔标记点、第四交点、第二圆柱体的第二端面圆心和第三中心点处于同一直线上并依次间隔排列,第二圆柱体的第二端面圆心位于第四交点和第三中心点之间任一位置,故第二圆柱体的第二端面位于代型模型中。在本实例中,优选第二圆柱体的第二端面圆心与第三中心点间距离为第二圆柱体的第二端面圆心与第四交点间距离的一半。

所述步骤S80包括:

步骤S81,将牙弓模型分别与构建的第一圆柱体、构建的第二圆柱体做布尔运算差集处理,以在牙弓模型上对应生成排溢孔和定位孔。

在构建完第一圆柱体和第二圆柱体后,会将牙弓模型与构建的第一圆柱体做布尔运算差集处理,从而在牙弓模型上生成排溢孔,同时将牙弓模型与构建的第二圆柱体做布尔运算差集处理,从而在牙弓模型上生成定位孔。

需要说明的是,终端还会将代型模型与第二圆柱体做布尔运算差集处理,从而在代型模型上生成定位孔。

本实施例通过在牙弓模型和与之装配的代型模型上生成定位孔,从而采用3D打印将具有定位孔的牙弓和具有定位孔的代型打印出来后,通过定位孔可以很清楚直观的观察到代型是否完全装配在牙弓中。

进一步地,根据本申请排溢孔的生成方法的前述实施例提出本申请排溢孔的生成方法的第四实施例,在本实施例中,步骤S70之后还包括:

步骤S701,获取到用户触发的新增指令,所述新增指令包括用户在牙弓模型的外壁面或内壁面上选择的新增点;

步骤S702,以新增点为起点,沿牙弓模型表面在新增点处的法线负方向构建第四射线;

步骤S703,获取第四射线与牙弓模型表面的交点,并将第四射线与牙弓模型表面的交点中距新增点最近的交点,作为第五交点;

步骤S704,以第一预设半径,构建贯穿牙弓模型内壁面和外壁面的新增第一圆柱体,其中新增点和第五交点在新增第一圆柱体的中轴线上。

在本实施例中,步骤S70中终端在牙弓模型上自动构建出第一圆柱体后,用户可能觉得牙弓模型上某些未构建第一圆柱体的位置需要设置排溢孔,用户会通过鼠标点击或通过与终端配对连接的触控笔点击,来在牙弓模型的外壁面或内壁面上选择需要生成第一圆柱体的新增点,然后触发新增指令。终端获取到用户触发的新增指令后,会以新增点为起点,沿牙弓模型表面在新增点处的法线负方向构建一条第四射线,若牙弓模型为三维网格模型,则会沿新增点所在的牙弓网格面片的法线负方向构建一条第四射线。第四射线会与牙弓模型表面相交会存在多个交点,该交点不包括第四射线的起点,即不包括新增点。终端会获取第四射线与牙弓模型表面的交点中距新增点最近的交点,称为第五交点。最后终端在获取到第五交点后,会构建一个以第一预设半径为半径的新增第一圆柱体,该新增第一圆柱体贯穿外壁面和内壁面,并且新增点和第五交点在新增第一圆柱体的中轴线上。为了防止构建的新增第一圆柱体过长最终形成的排溢孔会影响牙弓模型的结构稳定性和力学性能,可以预先设置一个第二预设偏移距离,终端根据新增点、第五交点和第二预设偏移距离和第一预设半径,自动在新增点处新增第一圆柱体,其中,新增的第一圆柱体的第一端面圆心、新增点、第五交点和新增的第一圆柱体的第二端面圆心处于同一直线上并依次间隔排列,新增的第一圆柱体的第一端面圆心和新增点间的距离与第五交点和新增的第一圆柱体的第二端面圆心间的距离均为第二预设偏移距离。第二预设偏移距离为2~4mm,本实施例中,优选第二预设偏移距离为3mmm。构建新增的第一圆柱体的具体过程和第一实施例中所描述的构建第一圆柱体的过程一样,在此不再赘述。

需要说明的是,当用户新增了一个第一圆柱体后,发现新增第一圆柱体没有达到用户的要求,用户可以对新增第一圆柱体进行删除操作,或者触发回撤操作,终端会将牙弓模型回撤到本次新增前的牙弓模型状态。

本实施例通过响应新增指令,在用户在牙弓模型的外壁面或内壁面上选择的任一处新增第一圆柱体,从而生成的排溢孔更加符合用户需求。

进一步地,根据本申请排溢孔的生成方法的前述实施例提出本申请排溢孔的生成方法的第五实施例,在本实施例中,步骤S70之后还包括:

步骤S705,获取到用户触发的删除指令,所述删除指令包括用户选择的第一圆柱体;

步骤S706,删除用户选择的第一圆柱体。

在本实施例中,步骤S70中终端在牙弓模型上自动构建出第一圆柱体后,用户可能觉得构建出的第一圆柱体数量过多,有些位置不需要排溢孔,用户会通过鼠标点击或通过与终端配对连接的触控笔点击,又或者通过鼠标或触控笔框选来选择不需要排溢孔位置处对应的第一圆柱体,然后触发删除指令,终端接收到删除指令后,会将用户选择的第一圆柱体删除。

本实施例通过响应删除指令删除用户所选择的第一圆柱体,从而避免在牙弓模型上不必要的位置生成排溢孔导致牙弓的结构稳定性变差的问题。

进一步地,根据本申请排溢孔的生成方法的前述实施例提出本申请排溢孔的生成方法的第六实施例,在本实施例中,步骤S70之后还包括:

步骤S707,获取到用户触发的半径调整指令,所述半径调整指令包括用户选择的第一圆柱体和用户输入的调整半径;

步骤S708,将用户选择的第一圆柱体的半径调整为用户输入的调整半径。

在本实施例中,步骤S70中终端在牙弓模型上自动构建出第一圆柱体后,用户可能觉得牙弓模型上某些位置构建出的第一圆柱体的半径过大或过小,由此生成的排溢孔的排溢效果会降低或者可能会影响该位置区域的结构稳定性。故用户会通过鼠标点击或通过与终端配对连接的触控笔点击,又或者通过鼠标或触控笔框选来选择需要调整半径的第一圆柱体,输入调整半径,然后触发半径调整指令,终端接收到半径调整指令后,会将用户选择的圆柱体的半径调整为用户输入的调整半径。

需要说明的是,当用户在对任一个第一圆柱体进行了半径调整后,发现半径调整后的第一圆柱体没有达到用户的要求,用户可以对半径调整后的第一圆柱体重新进行半径调整,或者触发回撤操作,终端会将牙弓模型回撤到本次半径调整前的牙弓模型状态。

本实施例通过响应半径调整指令,调整用户所选择的第一圆柱体的半径,从而使得生成的排溢孔能够获得最佳的排溢效果又能不降低所在区域的结构稳定性。

进一步地,根据本申请排溢孔的生成方法的前述实施例提出本申请排溢孔的生成方法的第七实施例,在本实施例中,步骤S70之后还包括:

步骤S709,获取到用户触发的位置调整指令,所述位置调整指令包括用户选择的第一圆柱体、以及用户在牙弓模型内壁面或外壁面上选择的位置调整点;

步骤S710,以位置调整点为起点,沿牙弓模型表面在位置调整点处的法线负方向构建第五射线;

步骤S711,获取第五射线与牙弓模型表面的交点,并将第五射线与牙弓模型表面的交点中距位置调整点最近的交点,作为第六交点;

步骤S712,以第一预设半径,构建贯穿牙弓模型内壁面和外壁面的位置调整后第一圆柱体,其中位置调整点和第六交点在位置调整后第一圆柱体的中轴线上;

步骤S713,删除用户选择的第一圆柱体。

在本实施例中,步骤S70中终端在牙弓模型上自动构建出第一圆柱体后,用户可能觉得牙弓模型上某些构建第一圆柱体的位置需要调整,用户会通过鼠标点击或通过与终端配对连接的触控笔点击,又或者通过鼠标或触控笔框选来选择需要调整位置的第一圆柱体,然后用户会通过鼠标点击或通过与终端配对连接的触控笔点击,来在牙弓模型的外壁面或内壁面上选择需要调整到的位置调整点,然后触发位置调整指令。终端获取到用户触发的位置调整指令后,会以位置调整点为起点,沿牙弓模型表面在位置调整点处的法线负方向构建一条第五射线,当牙弓模型为三维网格模型时,会沿位置调整点所在的牙弓网格面片的法线负方向构建一条第五射线。第五射线与牙弓模型表面相交可能会存在多个交点,该交点不包括第五射线的起点,即不包括位置调整点。终端会获取第五射线与牙弓模型表面的交点中距位置调整点最近的交点,称为第六交点。最后终端在获取到第六交点后,会构建一个以第一预设半径为半径的位置调整后第一圆柱体,该位置调整后第一圆柱体贯穿外壁面和内壁面,并且位置调整点和第六交点在位置调整后第一圆柱体的中轴线上。为了防止构建的位置调整后第一圆柱体过长最终形成的排溢孔会影响牙弓模型的结构稳定性和力学性能,可以预先设置一个第二预设偏移距离,终端会根据位置调整点、第六交点和第二预设偏移距离和第一预设半径,自动在位置调整点处构建位置调整后的第一圆柱体,其中,位置调整后的第一圆柱体的第一端面圆心、位置调整点、第六交点和位置调整后的第一圆柱体的第二端面圆心处于同一直线上并依次间隔排列,位置调整后的第一圆柱体的第一端面圆心和位置调整点间的距离与第六交点和位置调整后的第一圆柱体的第二端面圆心间的距离均为第二预设偏移距离。第二预设偏移距离为2~4mm,本实施例中,优选第二预设偏移距离为3mmm。构建位置调整后的第一圆柱体的具体过程和第一实施例中所描述的构建第一圆柱体的过程一样,在此不再赘述。当在所选择的位置调整点处生成了第一圆柱体后,会删除用户选择的第一圆柱体。

需要说明的是,当用户在对任一个第一圆柱体进行了位置调整后,发现位置调整后第一圆柱体没有达到用户的要求,用户可以对位置调整后第一圆柱体进行删除操作,或者触发回撤操作,终端会将牙弓模型回撤到本次方向调整前的牙弓模型状态。

本实施例通过响应位置调整指令,自动将用户所选择的第一圆柱体从原位置调整到用户选择的调整位置处,并且对选择的第一圆柱体的轴向长度进行了调整,使得调整位置后的第一圆柱体生成的排溢孔能够贯穿非中空部分到达中空部分,从而生成的排溢孔更加符合用户的需求。

进一步地,根据本申请排溢孔的生成方法的前述实施例提出本申请排溢孔的生成方法的第八实施例,在本实施例中,步骤S70之后还包括:

步骤S714,获取到用户触发的方向调整指令,所述方向调整指令包括用户选择的第一圆柱体和用户在牙弓模型外壁面上选择的方向调整点;

步骤S715,获取用户选择的第一圆柱体的中轴线与牙弓模型的内壁面的交点,作为第七交点;

步骤S716,以第一预设半径,构建贯穿牙弓模型内壁面和外壁面的方向调整后第一圆柱体,其中方向调整点和第七交点在方向调整后第一圆柱体的中轴线上;

步骤S717,删除方向调整前的第一圆柱体。

在本实施例中,圆柱体的中轴线是指圆柱体两个端面的圆心间的连线。步骤S70中终端在牙弓模型上自动构建出第一圆柱体后,用户可能觉得牙弓模型上某些构建第一圆柱体的轴线的方向需要调整,用户会通过鼠标点击或通过与终端配对连接的触控笔点击当前牙弓模型上已构建的任一个第一圆柱体,具体可以通过点击该圆柱体任一位置来选择该圆柱体,在本实施例中优选通过点击该圆柱体上的一个端面来选择该圆柱体,然后用户会通过鼠标点击或通过与终端配对连接的触控笔点击,来在牙弓模型的外壁面上选择需要调整到的位置调整点,然后触发方向调整指令。终端获取到用户触发的方向调整指令后,会获取用户选择的第一圆柱体的中轴线与牙弓模型的内壁面的交点,作为第七交点。最后终端在获取到第七交点后,会构建一个以第一预设半径为半径的方向调整后第一圆柱体,该方向调整后第一圆柱体贯穿外壁面和内壁面,并且方向调整点和第六交点在位置调整后第一圆柱体的中轴线上。为了防止构建的方向调整后第一圆柱体过长最终形成的排溢孔会影响牙弓模型的结构稳定性和力学性能,可以预先设置一个第二预设偏移距离,终端会根据方向调整点、第七交点和第二预设偏移距离和第一预设半径,自动在方向调整点处构建方向调整后的第一圆柱体,其中,方向调整后的第一圆柱体的第一端面圆心、方向调整点、第七交点和方向调整后的第一圆柱体的第二端面圆心处于同一直线上并依次间隔排列,方向调整后的第一圆柱体的第一端面圆心和方向调整点间的距离与第七交点和方向调整后的第一圆柱体的第二端面圆心间的距离均为第二预设偏移距离。第二预设偏移距离为2~4mm,本实施例中,优选第二预设偏移距离为3mmm。构建方向调整后的第一圆柱体的具体过程和第一实施例中所描述的构建第一圆柱体的过程一样,在此不再赘述。当在所选择的方向调整点处生成了方向调整后第一圆柱体后,会删除用户选择的第一圆柱体。

需要说明的是,当用户在对任一个第一圆柱体进行了方向调整后,发现方向调整后第一圆柱体没有达到用户的要求,用户可以对方向调整后第一圆柱体进行删除操作,或者触发回撤操作,终端会将牙弓模型回撤到本次方向调整前的牙弓模型状态。

需要说明的是,对构建的第一圆柱体的方向调整、位置调整、删除、新增和半径调整等操作的先后顺序不作限定。例如对牙弓模型上的部分或全部的第一圆柱体做了方向调整操作后,可以对牙弓模型上的部分或全部的第一圆柱体做半径调整,也或者可以对牙弓模型上的部分或全部的第一圆柱体做位置调整,还可以删除牙弓模型上的第一圆柱体。

本实施例通过响应方向调整指令,自动将用户所选择的第一圆柱体的轴线的原方向调整到用户选择的方向,并且对选择的第一圆柱体的轴向长度进行了调整,使得调整方向后的第一圆柱体生成的排溢孔能够贯穿非中空部分到达中空部分,从而生成的排溢孔更加符合用户的需求。

本发明还提出一种计算机可读存储介质,其上存储有计算机程序。所述计算机可读存储介质可以是图1的终端中的存储器02,也可以是如ROM(Read-Only Memory,只读存储器)/RAM(Random Access Memory,随机存取存储器)、磁碟、光盘中的至少一种,所述计算机可读存储介质包括若干信息用以使得终端执行本发明各个实施例所述的方法。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

22页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种环保牙线

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类