掌桥专利:专业的专利平台
掌桥专利
首页

支撑体生成方法、3D打印机、计算机装置及存储介质

文献发布时间:2023-06-19 10:54:12


支撑体生成方法、3D打印机、计算机装置及存储介质

技术领域

本发明涉及三维(Three Dimensions,3D)打印领域,尤其涉及一种支撑体生成方法、3D打印机、计算机装置及计算机可读存储介质。

背景技术

3D打印即快速成型技术,是一种累积制造技术,又称增材制造,它是一种数字模型文件为基础,运用特殊蜡材、粉末状金属或塑料等可粘合材料,通过打印一层层的粘合材料来制造三维的物体。常用的3D打印技术包括熔融沉积成型(Fused Deposition Modeling,FDM)、数字光固化成型(Digital Light Processing,DLP)等。这些技术一般都会以离散的方式将模型切成很多平行的层,然后通过逐层固化的方式来形成整个模型,当前层的成型效果会依赖于前一层的成型,各层之间一般是一种连续变化的过程,如果有两层间的某些部分产生突变,就有可能造成打印失败。为了避免突变造成打印失败,一般会生成额外的支撑体来使得模型成功打印。

支撑体的生成是一种计算密集型算法,需要做较多直线和模型的三角面的碰撞检测,如何实现快速完成碰撞检测,降低支撑体生成时间是3D打印领域亟待解决的问题。

发明内容

鉴于上述,本发明提供一种支撑体生成方法、3D打印机、计算机装置及计算机可读存储介质,其通过构建二维(Two Dimensions,2D)网格来加快碰撞检测速度,可降低支撑体生成时间。

本申请一实施方式提供一种支撑体生成方法,包括:根据三角网格模型的坐标数据生成包围盒;根据包围盒尺寸确定三角网格模型在XY轴平面的包围矩形的长度、宽度及最小点坐标;基于包围矩形的长度与宽度构建平行于XY轴平面的2D网格,其中2D网格由多个相同边长的正方形方块组成,每一方块均对应有索引列表;根据方块的边长及最小点坐标计算2D网格中每一方块的XY方向界限值,及根据坐标数据确定三角网格模型中的每一三角面的XY方向界限值;比对三角面的XY方向界限值与方块的XY方向界限值,以确定三角面是否落入方块中,及将落入方块的三角面索引信息添加至与方块对应的索引列表;当检测与Z轴平行的直线和三角网格模型的碰撞情形时,基于直线的XY坐标确定直线所属的方块;将直线与其所属的方块的索引列表中的每一三角面进行求交运算,确定需支撑的三角面,以在需支撑的三角面下方沿Z轴生成支撑体。

在一些实施例中,包围盒为长方体包围盒,根据三角网格模型的坐标数据生成包围盒的步骤,包括:获取三角网格模型的顶点坐标集,并从顶点坐标集中选取分别在X轴、Y轴和Z轴上最远的顶点和最近的顶点;基于选取到的顶点生成所述包围盒。

在一些实施例中,2D网格在X轴方向上的方块个数N

在一些实施例中,根据方块的边长及最小点坐标计算2D网格中每一方块的XY方向界限值的步骤,包括:对每一方块进行编号;根据方块的编号、边长及所述最小点坐标计算方块的XY方向界限值;其中,方块的XY方向界限值包括C

在一些实施例中,根据坐标数据确定三角网格模型中的每一三角面的XY方向界限值的步骤包括:根据坐标数据获取三角面的三个端点的坐标,其中三角面的XY方向界限值包括T

在一些实施例中,确定所述三角面是否落入方块中,包括:基于方块的XY方向界限值构建在X轴方向的第一区间及在Y轴方向的第二区间;基于三角面的XY方向界限值构建在X轴方向的第三区间及在Y轴方向的第四区间;当第一区间与第三区间存在交集且第二区间与第四区间存在交集时,确定三角面落入方块中。

在一些实施例中,基于直线的XY坐标确定直线所属的方块的步骤,包括:当直线的X坐标落入方块的第一区间且直线的Y坐标落入方块的第二区间,确定方块为直线所属的方块。

在一些实施例中,将直线与其所属的方块的索引列表中的每一三角面进行求交运算,确定需支撑的三角面,包括:将直线的XY坐标与及其所属的方块的索引列表中的每一三角面的XY方向界限值进行比对,确定索引列表中与直线发生相交的三角面,并将与直线发生相交的三角面确定为需支撑的三角面。

本申请一实施方式提供一种3D打印机,3D打印机可执行上述的支撑体生成方法的步骤。

本申请一实施方式提供一种计算机装置,计算机装置包括处理器及存储器,存储器上存储有若干计算机程序,处理器用于执行存储器中存储的计算机程序时控制3D打印机执行上述的支撑体生成方法的步骤。

本申请一实施方式提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时控制3D打印机执行上述的支撑体生成方法的步骤。

上述支撑体生成方法、3D打印机、计算机装置及计算机可读存储介质,将3D的三角网格模型转化为2D来进行碰撞检测分析,并通过构建2D网格来加快碰撞检测速度,使用直线与2D网格方块的索引列表中的每一三角面进行求交运算,可实现剔除了大部分不需要参与计算的三角面,降低支撑体生成时间,提升用户使用体验,且用户可以通过控制2D网格的分辨率大小,平衡支撑体生成过程中时间效率和内存使用率。

附图说明

图1是本发明一实施例中支撑体生成方法的步骤流程图。

图2是本发明一实施例中2D网格的示意图。

图3是本发明一实施例中三角网格模型的三角面的示意图。

图4为本发明一实施例中支撑体生成装置的功能模块图。

图5为本发明一实施例中3D打印机的示意图

图6为本发明一实施例中计算机装置的示意图。

主要元件符号说明

支撑体生成装置 10

存储器 20

处理器 30

第一计算机程序 42

第二计算机程序 44

生成模块 101

第一确定模块 102

构建模块 103

计算模块 104

比对模块 105

第二确定模块 106

第三确定模块 107

3D打印机 100

计算机装置 200

主控制器 1001

挤出机模块 1002

电机 1003

操控展示模块 1004

具体实施方式

为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行详细描述。需要说明的是,在不冲突的情况下,本申请的实施方式及实施方式中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是旨在于限制本发明。

现实世界中的三维物体表面直观上看都是由曲面构成的,而在计算机世界中,由于只能用离散的结构去模拟现实世界中连续的事物。现实世界中的曲面在计算机里是由无数个小的多边形面片去组成的。在计算机渲染后由肉眼看是十分平滑的曲面,而实际上,计算机内部使用了大量的小面片去组成了这样的形状。这样的小面片的集合就被称作Mesh。Mesh既可以由三角形组成,也可以由其他平面形状如四边形,五边形等组成;由于平面多边形实际上也能再细分成三角形。因而,待打印的3D模型的表面可以全由三角面来组成。

本申请提供一种支撑体生成方法,包括:根据三角网格模型的坐标数据生成包围盒;根据包围盒尺寸确定三角网格模型在XY轴平面的包围矩形的长度、宽度及最小点坐标;基于包围矩形的长度与宽度构建平行于XY轴平面的2D网格,其中2D网格由多个相同边长的正方形方块组成,每一方块均对应有索引列表;根据方块的边长及最小点坐标计算2D网格中每一方块的XY方向界限值,及根据三角网格模型的坐标数据确定三角网格模型中的每一三角面的XY方向界限值;比对三角面的XY方向界限值与方块的XY方向界限值,以确定三角面是否落入方块中,及将落入方块的三角面索引信息添加至与方块对应的索引列表;当检测与Z轴平行的直线和三角网格模型的碰撞情形时,基于直线的XY坐标确定直线所属的方块;将直线与其所属的方块的索引列表中的每一三角面进行求交运算,确定需支撑的三角面,以在需支撑的三角面下方沿Z轴生成支撑体。

上述支撑体生成方法,将三角网格模型映射至2D平面并构建2D网格,使用直线与2D网格方块的索引列表中的三角面进行求交,可以剔除大部分不需要参与计算的三角面,加快碰撞检测速度,减少支撑体生成时间,提升用户使用体验。

本申请的支撑体生成方法可以应用在3D打印机中,或者计算机装置中。计算机装置可以是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific IntegratedCircuit,ASIC)、可编程门阵列(Field-Programmable Gate Array,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。计算机装置可以是桌上型计算机、笔记本电脑、服务器、工业电脑等计算设备。计算机装置可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。

图1是本发明支撑体生成方法较佳实施例的步骤流程图。根据不同的需求,所述流程图中步骤的顺序可以改变,某些步骤可以省略。

参阅图1所示,支撑体生成方法可以具体包括以下步骤。

步骤S11、根据三角网格模型的坐标数据生成包围盒。

在一些实施例中,三角网格模型可以是指由多个三角面组成模型表面的3D模型。可以先获取要生成支撑体的三角网格模型,再根据三角网格模型的坐标数据生成包围盒。包围盒可以是轴对齐包围盒、有向包围盒等。比如,可以获取三角网格模型的顶点坐标集,从顶点坐标集中选取分别在X轴、Y轴和Z轴上最远的顶点和最近的顶点,当选取得到6个顶点之后,分别取它们对应的轴向上的坐标值来构成上界限值(Max)和下界限值(Min),再基于三个轴向上的Max和Min生成长方体包围盒。包围盒的尺寸可以根据三个轴向上的Max和Min计算得到。

在一些实施例中,可以通过获取待3D打印的物体的信息并建立与待3D打印的物体对应的三角网格模型。待3D打印的物体可以根据实际需求进行指定,在此不作限定。

步骤S12,根据包围盒尺寸确定三角网格模型在XY轴平面的包围矩形的长度、宽度及最小点坐标。

在一些实施例中,三角网格模型的切片平面一般是平行于XY平面,沿着Z轴进行逐层打印。即包围盒亦是平行于XY平面,沿着Z轴延伸的长方体,包围盒的长度等于包围矩形的长度,包围盒的宽度等于包围矩形的宽度,三角网格模型在XY轴平面的最小点坐标与包围矩形的左下端点的坐标相同(如图2所示)。

S13,基于包围矩形的长度与宽度构建平行于XY轴平面的2D网格。

在一些实施方式中,2D网格可以是由多个相同边长的正方形方块组成。2D网格可以被认定为XY平面的二维结构体数组,该结构体数组中的每个元素被称作一个方块,方块的边长为R,2D网格在X方向可以划分方块的个数N

例如,L为25cm,W为20cm,R为0.025cm,2D网格在X方向可以划分方块的个数N

例如,L为20cm,W为15cm,R为0.03cm,2D网格在X方向可以划分方块的个数N

在一些实施方式中,可以根据实际支撑体生成需求来设定方块的边长,方块的边长越大,2D网格包含的块数越少,碰撞检测的加速效果越不明显,同时占用的内存空间越少。方块的边长R越小,2D网格包含的方块数越多,碰撞检测的加速效果越明显,同时占用的内存空间越多。可以通过控制2D网格的分辨率大小(方块的边长),平衡支撑体生成过程中时间效率和内存使用率,比如增大分辨率来加快支撑体生成过程,也可以通过稍微降低分辨率,在一定的生成速度上将内存使用率降低。

如图2所示,可以对2D网格中的每个方块进行编号,比如2D网格在X方向的方块的个数为n+1,在Y方向的方块的个数为m+1,2D网格中第一行的方块编号为(0,0)、(0,1)、(0,2)、(0,j)、…、(0、n),第i行的方块编号为(i-1,0)、(i-1,1)、(i-1,2)、(i-1,j)、…、(i-1、n),第m+1行的方块编号为(m,0)、(m,1)、(m,2)、(m,j)、…、(m、n)。i、j、m、n均为自然数,i

在一些实施方式中,2D网格中的每一方块均对应有索引列表,索引列表用于存储落入该方块内的三角面的信息。比如,方块(0,0)对应的索引列表为Clist_00,方块(i,j)对应的索引列表为Clist_ij,方块(m,n)对应的索引列表为Clist_mn。

S14,根据方块的边长及最小点坐标计算2D网格中每一方块的XY方向界限值,及根据三角网格模型的坐标数据确定三角网格模型中的每一三角面的XY方向界限值。

在一些实施方式中,方块的XY方向界限值可以包括在X轴方向上的两个界限值C

如图2所示,假设最小点坐标为(x

在一些实施方式中,三角面的XY方向界限值可以包括在X轴方向上的两个界限值T

例如,三角面TR1的三个端点的坐标为(x1,y1)、(x2,y2)及(x3,y3),x1

S15、比对三角面的XY方向界限值与方块的XY方向界限值,以确定三角面是否落入方块中,及将落入方块的三角面索引信息添加至与方块对应的索引列表。

在一些实施方式中,可以在XY平面上将每一三角面的XY方向界限值与每一方块的XY方向界限值进行比对,来确定三角面是否落入方块中。当确定某一三角面落入一方块中,可以将该三角面的索引信息添加至与该方块对应的索引列表中,否则不添加。该索引信息可用于唯一标识三角面,可以包括三角面的编号、端点坐标信息等。

在一些实施方式中,可以基于方块的XY方向界限值构建在X轴方向的第一区间及在Y轴方向的第二区间,基于三角面的XY方向界限值构建在X轴方向的第三区间及在Y轴方向的第四区间。当方块的第一区间与三角面的第三区间存在交集且方块的第二区间与三角面的第四区间亦存在交集时,可以确定该三角面落入该方块中,进而可以将该三角面添加至与该方块对应的索引列表中。

例如,基于编号为(0,0)方块的XY方向界限值构建在X轴方向的第一区间为[x

S16、当检测与Z轴平行的直线和三角网格模型的碰撞情形时,基于直线的XY坐标确定直线所属的方块。

在一些实施方式中,碰撞检测一般是发生在沿Z轴的直线与三角面之间。当检测与Z轴平行的直线和三角网格模型的碰撞情形时,可以基于直线的XY坐标确定该直线所属的方块。

可以理解,沿Z轴的直线在XY平面上具有X坐标与Y坐标,当该直线的X坐标落入一方块的第一区间且Y坐标落入该方块的第二区间时,可以确定该方块为直线所属的方块。比如,Z轴平行的直线L1在XY平面上的坐标为(x4,y4),当x4落入编号为(i,j)的方块的第一区间[x

S17、将直线与其所属的方块的索引列表中的每一三角面进行求交运算,确定需支撑的三角面,以在需支撑的三角面下方沿Z轴生成支撑体。

在一些实施方式中,当确定直线所属的方块时,可以将直线与其所属的方块的索引列表中的每一三角面进行求交运算,确定需支撑的三角面,可以实现剔除大部分不需要参与计算的三角面,减少支撑体生成时间,提升用户使用体验。例如,可以将直线的XY坐标及其所属的方块的索引列表中的每一三角面的XY方向界限值进行比对,确定该索引列表中与该直线发生相交的三角面,并将与该直线发生相交的三角面确定为需支撑的三角面。

在一些实施方式中,若直线的XY坐标落入某一三角面的XY方向界限值内时,确定该直线与该三角面发生相交。当确定三角网格模型中所有需支撑的三角面时,可以采用现有的支撑体生成方案来在需支撑的三角面下方沿Z轴生成支撑体。

上述支撑体生成方法,将3D的三角网格模型转化为2D来进行碰撞检测分析,并通过构建2D网格来加快碰撞检测速度,使用直线与2D网格方块的索引列表中的每一三角面进行求交运算,可实现剔除了大部分不需要参与计算的三角面,降低支撑体生成时间,提升用户使用体验,且用户可以通过控制2D网格的分辨率大小,平衡支撑体生成过程中时间效率和内存使用率。

图4为本发明支撑体生成装置较佳实施例的功能模块图。

参阅图4所示,所述支撑体生成装置10可以包括生成模块101、第一确定模块102、构建模块103、计算模块104、比对模块105、第二确定模块106及第三确定模块107。

生成模块101用于根据三角网格模型的坐标数据生成包围盒。

在一些实施例中,三角网格模型可以是指由多个三角面组成模型表面的3D模型。生成模块101可以先获取要生成支撑体的三角网格模型,再根据三角网格模型的坐标数据生成包围盒。包围盒可以是轴对齐包围盒、有向包围盒等。比如,生成模块101可以获取三角网格模型的顶点坐标集,从顶点坐标集中选取分别在X轴、Y轴和Z轴上最远的顶点和最近的顶点,当选取得到6个顶点之后,分别取它们对应的轴向上的坐标值来构成上界限值(Max)和下界限值(Min),再基于三个轴向上的Max和Min生成长方体包围盒。包围盒的尺寸可以根据三个轴向上的Max和Min计算得到。

在一些实施例中,可以通过获取待3D打印的物体的信息并建立与待3D打印的物体对应的三角网格模型。待3D打印的物体可以根据实际需求进行指定,在此不作限定。

第一确定模块102用于根据包围盒尺寸确定三角网格模型在XY轴平面的包围矩形的长度、宽度及最小点坐标。

在一些实施例中,三角网格模型的切片平面一般是平行于XY平面,沿着Z轴进行逐层打印。即包围盒亦是平行于XY平面,沿着Z轴延伸的长方体。第一确定模块102可以确定包围盒的长度等于包围矩形的长度,包围盒的宽度等于包围矩形的宽度,三角网格模型在XY轴平面的最小点坐标与包围矩形的左下端点的坐标相同。

构建模块103用于基于包围矩形的长度与宽度构建平行于XY轴平面的2D网格。

在一些实施方式中,2D网格可以是由多个相同边长的正方形方块组成。2D网格可以被认定为XY平面的二维结构体数组,该结构体数组中的每个元素被称作一个方块,方块的边长为R,2D网格在X方向可以划分方块的个数N

例如,L为25cm,W为20cm,R为0.025cm,2D网格在X方向可以划分方块的个数N

例如,L为20cm,W为15cm,R为0.03cm,2D网格在X方向可以划分方块的个数N

在一些实施方式中,使用者可以根据实际支撑体生成需求来设定方块的边长,方块的边长越大,2D网格包含的块数越少,碰撞检测的加速效果越不明显,同时占用的内存空间越少。方块的边长R越小,2D网格包含的方块数越多,碰撞检测的加速效果越明显,同时占用的内存空间越多。可以通过控制2D网格的分辨率大小(方块的边长),平衡支撑体生成过程中时间效率和内存使用率,比如增大分辨率来加快支撑体生成过程,也可以通过稍微降低分辨率,在一定的生成速度上将内存使用率降低。

如图2所示,可以对2D网格中的每个方块进行编号,比如2D网格在X方向的方块的个数为n+1,在Y方向的方块的个数为m+1,2D网格中第一行的方块编号为(0,0)、(0,1)、(0,2)、(0,j)、…、(0、n),第i行的方块编号为(i-1,0)、(i-1,1)、(i-1,2)、(i-1,j)、…、(i-1、n),第m+1行的方块编号为(m,0)、(m,1)、(m,2)、(m,j)、…、(m、n)。i、j、m、n均为自然数,i

在一些实施方式中,2D网格中的每一方块均对应有索引列表,索引列表用于存储落入该方块内的三角面的索引信息。比如,方块(0,0)对应的索引列表为Clist_00,方块(i,j)对应的索引列表为Clist_ij,方块(m,n)对应的索引列表为Clist_mn。

计算模块104用于根据方块的边长及最小点坐标计算2D网格中每一方块的XY方向界限值,及根据三角网格模型的坐标数据确定三角网格模型中的每一三角面的XY方向界限值。

在一些实施方式中,方块的XY方向界限值可以包括在X轴方向上的两个界限值C

如图2所示,假设最小点坐标为(x

在一些实施方式中,三角面的XY方向界限值可以包括在X轴方向上的两个界限值T

例如,三角面TR1的三个端点的坐标为(x1,y1)、(x2,y2)及(x3,y3),x1

比对模块105用于比对三角面的XY方向界限值与方块的XY方向界限值,以确定三角面是否落入方块中,及将落入方块的三角面索引信息添加至与方块对应的索引列表。

在一些实施方式中,可以在XY平面上将每一三角面的XY方向界限值与每一方块的XY方向界限值进行比对,来确定三角面是否落入方块中。当确定某一三角面落入一方块中,比对模块105可以将该三角面的索引信息添加至与该方块对应的索引列表中,否则不添加。该索引信息可用于唯一标识三角面,可以包括三角面的编号、端点坐标信息等。

在一些实施方式中,比对模块105可以基于方块的XY方向界限值构建在X轴方向的第一区间及在Y轴方向的第二区间,基于三角面的XY方向界限值构建在X轴方向的第三区间及在Y轴方向的第四区间。当方块的第一区间与三角面的第三区间存在交集且方块的第二区间与三角面的第四区间亦存在交集时,可以确定该三角面落入该方块中,进而可以将该三角面添加至与该方块对应的索引列表中。

例如,基于编号为(0,0)方块的XY方向界限值构建在X轴方向的第一区间为[x

第二确定模块106用于在检测与Z轴平行的直线和三角网格模型的碰撞情形时,基于直线的XY坐标确定直线所属的方块。

在一些实施方式中,碰撞检测一般是发生在沿Z轴的直线与三角面之间。当检测与Z轴平行的直线和三角网格模型的碰撞情形时,第二确定模块106可以基于直线的XY坐标确定该直线所属的方块。

可以理解,沿Z轴的直线在XY平面上具有X坐标与Y坐标,当该直线的X坐标落入一方块的第一区间且Y坐标落入该方块的第二区间时,第二确定模块106可以确定该方块为直线所属的方块。比如,Z轴平行的直线L1在XY平面上的坐标为(x4,y4),当x4落入编号为(i,j)的方块的第一区间[x

第三确定模块107用于将直线与其所属的方块的索引列表中的每一三角面进行求交运算,确定需支撑的三角面,以在需支撑的三角面下方沿Z轴生成支撑体。

在一些实施方式中,当确定直线所属的方块时,第三确定模块107可以将直线与其所属的方块的索引列表中的每一三角面进行求交运算,确定需支撑的三角面,可以剔除大部分不需要参与计算的三角面,减少支撑体生成时间,提升用户使用体验。例如,可以将直线的XY坐标及其所属的方块的索引列表中的每一三角面的XY方向界限值进行比对,确定该索引列表中与该直线发生相交的三角面,并将与该直线发生相交的三角面确定为需支撑的三角面。

在一些实施方式中,若直线的XY坐标落入某一三角面的XY方向界限值内时,第三确定模块107确定该直线与该三角面发生相交。当确定三角网格模型中所有需支撑的三角面时,可以采用现有的支撑体生成方案来在需支撑的三角面下方沿Z轴生成支撑体。

上述支撑体生成装置,将3D的三角网格模型转化为2D来进行碰撞检测分析,并通过构建2D网格来加快碰撞检测速度,使用直线与2D网格方块的索引列表中的每一三角面进行求交运算,可实现剔除了大部分不需要参与计算的三角面,降低支撑体生成时间,提升用户使用体验,且用户可以通过控制2D网格的分辨率大小,平衡支撑体生成过程中时间效率和内存使用率。

图5为本发明3D打印机较佳实施例的示意图。

3D打印机100包括主控制器1001、挤出机模块1002、电机1003及操控展示模块1004。

主控制器1001可以根据程序执行操纵电机1003、操控展示模块1004展示信息、进行数据通讯等。挤出机模块1002可以包括挤出机、加热棒等,可以实现耗材的加热、挤出等。操控展示模块1004可以包括按键、触控显示器等,可以让使用者输入控制指令、对3D打印机100的使用情形和打印情况进行展示等。

第一计算机程序42可以存储在主控制器1001的Flash存储器中,主控制器1001可以执行第一计算机程序42时实现上述支撑体生成方法实施例中的步骤,例如图1所示的步骤S11~S17。或者,主控制器1001可以执行第一计算机程序42时实现上述支撑体生成装置实施例中各模块的功能,例如图4中的模块101~107。

示例性的,第一计算机程序42可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在主控制器1001的Flash存储器中,并由在主控制器1001执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,所述指令段用于描述第一计算机程序42在3D打印机100中的执行过程。例如,第一计算机程序42可以被分割成图4中的生成模块101、第一确定模块102、构建模块103、计算模块104、比对模块105、第二确定模块106及第三确定模块107。

本领域技术人员可以理解,所述示意图是3D打印机100的示例,并不构成对3D打印机100的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如3D打印机100还可以包括通信模块等。

图6为本发明计算机装置较佳实施例的示意图。

计算机装置200包括存储器20、处理器30以及存储在存储器20中并可在处理器30上运行的第二计算机程序44。处理器30执行第二计算机程序44时实现控制3D打印机100执行上述支撑体生成方法实施例中的步骤,例如图1所示的步骤S11~S17。或者,处理器30执行第二计算机程序44时实现控制3D打印机100执行上述支撑体生成装置实施例中各模块的功能,例如图4中的模块101~107。

示例性的,第二计算机程序44可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在存储器20中,并由处理器30执行。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,所述指令段用于描述第二计算机程序44在计算机装置200中的执行过程。例如,第二计算机程序44同样可以被分割成图4中的生成模块101、第一确定模块102、构建模块103、计算模块104、比对模块105、第二确定模块106及第三确定模块107。

计算机装置200可以是桌上型计算机、笔记本、掌上电脑、工业电脑、平板电脑、服务器等计算设备。本领域技术人员可以理解,所述示意图是计算机装置200的示例,并不构成对计算机装置200的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机装置200还可以包括输入输出设备、网络接入设备、总线等。

处理器30可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者处理器30也可以是任何常规的处理器等。

存储器20可用于存储第二计算机程序44和/或模块/单元,处理器30通过运行或执行存储在存储器20内的计算机程序和/或模块/单元,以及调用存储在存储器20内的数据,实现计算机装置200的各种功能。存储器20可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机装置200的使用所创建的数据(比如音频数据)等。此外,存储器20可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。

计算机装置200集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,所述计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。

在本发明所提供的几个实施例中,应该理解到,所揭露的计算机装置和方法,可以通过其它的方式实现。例如,以上所描述的计算机装置实施例是示意性的,例如,所述单元的划分,为一种逻辑功能划分,实际实现时可以有另外的划分方式。

另外,在本发明各个实施例中的各功能单元可以集成在相同处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在相同单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。计算机装置权利要求中陈述的多个单元或计算机装置也可以由同一个单元或计算机装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

相关技术
  • 支撑体生成方法、3D打印机、计算机装置及存储介质
  • 一种涂胶路径生成方法、生成装置、生成系统及计算机可读存储介质
技术分类

06120112722216