3D模型成型方法及3D打印系统与流程

文档序号:13144842阅读:112来源:国知局
技术领域本发明涉及打印技术领域,特别是涉及一种3D模型成型方法及3D打印系统。

背景技术:
3D打印,即快速成型技术的一种,它是一种以数字模型文件为基础,运用特殊蜡材、粉末状金属或塑料等可粘合材料,通过逐层打印的方式来构造物体的技术。3D打印的设计过程通常是:先通过计算机建模软件如CAD、CAID等中构建需要打印的虚拟3D模型,再将构建的虚拟3D模型“分区”成逐层的截面,3D打印机通过读取3D模型的截面信息,用液体状、粉状或片状的材料将这些截面逐层打印出来,再将各层截面以各种方式粘合起来从而制造出一个实体。利用3D打印技术几乎可以任何形状的物品,产品多样化,且打印出来的物品无需组装,成本低,效率高。随着用户需求的增长,越来越多用户希望能把喜欢的虚拟图形例如某一应用场景画面变为实体物品所拥有,然而利用现有的3D模型成型方法,通常需要先在建模软件中构建该应用场景对应的3D模型才能够进行3D打印,如此一来需要花费较多的时间在模型设计上,且提高了3D打印的难度,降低趣味性。

技术实现要素:
本发明主要解决的技术问题是提供一种3D模型成型方法及3D打印系统,能够方便打印出用户喜欢/需要的现成3D对象、减少3D打印时间。为解决上述技术问题,本发明采用的一个技术方案是:提供一种3D模型成型方法,包括:根据用户选择从预定应用场景中获取用户所选择的待打印3D对象;将获取的所述待打印3D对象转变成打印文件;将所述打印文件发送至3D打印机,以使得所述3D打印机根据所述打印文件进行3D打印;显示打印进度示意图,其中,所述打印进度示意图的形状与所述待打印3D对象的形状相同或是所述待打印3D对象的简化形状,所述打印进度示意图中的已打印部分和未打印部分的标记不相同。其中,所述显示打印进度示意图的步骤包括:从至少两个视图方向分别显示打印进度示意图。其中,所述显示打印进度示意图的步骤包括:显示打印进度百分比。其中,所述根据用户选择从预定应用场景中获取用户所选择的待打印3D对象的步骤包括:根据用户选择从正在运行的3D游戏应用中获取对应选定游戏场景的待打印3D对象。其中,所述根据用户选择从正在运行的3D游戏应用中获取对应选定游戏场景的待打印3D对象的步骤包括:接收用户的截屏选择指令,以确定所述正在运行的3D游戏应用的界面中的截屏区域;选取所述截屏区域内所对应选定游戏场景的3D模型,以作为获取的所述待打印3D对象。其中,所述选取所述截屏区域内所对应选定游戏场景的3D模型的步骤包括:获取所述截屏区域内组成所述选定游戏场景的每帧游戏场景对应的单一模型的顶点坐标数据、纹理数据以及变换矩阵数据;利用所述顶点坐标数据、纹理数据以及变换矩阵数据获取每帧游戏场景对应的单一模型;将组成所述选定游戏场景的所有帧游戏场景分别对应的单一模型按照预定规则进行组合,进而得到所述选定游戏场景对应的3D模型。为解决上述技术问题,本发明采用的另一个技术方案是:提供一种3D打印系统,包括:获取模块,用于根据用户选择从预定应用场景中获取用户所选择的待打印3D对象;第一处理模块,用于将获取的所述待打印3D对象转变成打印文件;发送模块,用于将所述打印文件发送至3D打印机,以使得所述3D打印机根据所述打印文件进行3D打印;第一显示模块,用于显示打印进度示意图,其中,所述打印进度示意图的形状与所述待打印3D对象的形状相同或是所述待打印3D对象的简化形状,所述打印进度示意图中的已打印部分和未打印部分的标记不相同。其中,所述第一显示模块用于从至少两个视图方向分别显示打印进度示意图。其中,所述第一显示模块用于显示打印进度百分比。其中,所述获取模块用于根据用户选择从正在运行的3D游戏应用中获取对应选定游戏场景的待打印3D对象。其中,所述获取模块包括:接收单元,用于接收用户的截屏选择指令,以确定所述正在运行的3D游戏应用的界面中的截屏区域;选取单元,用于选取所述截屏区域内所对应选定游戏场景的3D模型,以作为获取的所述待打印3D对象。其中,所述选取单元包括:第一获取子单元,用于获取所述截屏区域内组成所述选定游戏场景的每帧游戏场景对应的单一模型的顶点坐标数据、纹理数据以及变换矩阵数据;第二获取子单元,用于利用所述顶点坐标数据、纹理数据以及变换矩阵数据获取每帧游戏场景对应的单一模型;第三获取子单元,用于将组成所述选定游戏场景的所有帧游戏场景分别对应的单一模型按照预定规则进行组合,进而得到所述选定游戏场景对应的3D模型。本发明的有益效果是:区别于现有技术的情况,本发明3D模型成型方法中,从预定应用场景中获取待打印3D对象,并将待打印3D对象转变成打印文件,以使得3D打印机根据打印文件进行对待打印3D对象的3D打印,由此不需要在建模软件中建立3D模型即可实现3D打印,能够方便打印出用户喜欢/需要的现成3D对象、减少3D打印的时间。此外,在将打印文件发送给3D打印机进行3D打印后,显示打印进度示意图,该打印进度示意图的形状与待打印3D对象的形状相同或为其简化形状,由此用户可直观看到目前打印进度。附图说明图1是本发明3D模型成型方法一实施方式的流程图;图2是本发明3D模型成型方法另一实施方式的流程图;图3是本发明3D模型成型方法一实施方式中,在正在运行的3D游戏应用的界面中显示截屏悬浮窗操作界面的示意图;图4是本发明3D模型成型方法一实施方式中,用户截屏选择游戏场景后的界面的示意图;图5是本发明3D模型成型方法一实施方式中,选取截屏区域内所对应选定游戏场景的3D模型的流程图;图6是本发明3D模型成型方法一实施方式中,在将获取的待打印3D对象转变成打印文件之前的流程图;图7是本发明3D模型成型方法一实施方式中,3D模型编辑界面的示意图;图8是本发明3D打印系统一实施方式的结构示意图。具体实施方式下面将结合具体实施方式和附图对本发明进行详细说明。参阅图1,本发明3D模型成型方法一实施方式中,包括如下步骤:步骤S101:根据用户选择从预定应用场景中获取用户所选择的待打印3D对象。其中,预定应用场景是指3D应用场景,即利用3D建模技术构造场景画面的应用,例如3D游戏应用场景、3D影视动画场景、3D展示(例如3D房产展示、3D服装展示)等。在3D应用场景中,构成场景的各元素(例如人物、环境)通常是利用三维建模软件来构造相应的3D模型而形成,因此,当需要对3D应用场景中的某一场景进行3D打印时,用户可在3D应用场景中选择需要进行3D打印的3D对象,所述3D对象即是指3D应用场景中的各种元素,计算机根据用户选择获取用户所选择的待打印3D对象,该获取的待打印3D对象即为用以实现3D打印的3D模型。当然,在其他实施方式中,预定应用场景也可以是2D应用场景,即不是利用3D建模技术构成场景画面的应用,在此种情况下,可以一定的转换关系将2D应用场景转换成3D应用场景,进而得到待打印3D对象。步骤S102:将获取的待打印3D对象转变成打印文件。具体地,将需要打印的3D模型进行切片处理以获取3D模型的每一层截面信息,并将这些截面信息进行记录即得到打印文件。打印文件为记录3D模型的截面信息的文件,也是实现计算机和3D打印机之间协作的文件。步骤S103:将打印文件发送至3D打印机,以使得3D打印机根据打印文件进行3D打印。其中,计算机和3D打印机之间可通过有线连接方式实现打印文件的传输,或者也可以通过无线方式例如蓝牙、WIFI等方式实现打印文件的传输。打印文件中记录有所获取的3D模型的每一层截面信息,3D打印机根据打印文件中所记录的3D模型的截面信息进行逐层打印,从而打印得到实体3D模型。步骤S104:显示打印进度示意图,其中,打印进度示意图的形状与待打印3D对象的形状相同,打印进度示意图中的已打印部分和未打印部分的标记不相同。其中,打印进度示意图中,表示已打印部分和表示未打印部分可采用不同的颜色标记,例如表示已打印部分采用红色标记,表示未打印部分采用绿色标记。或者,表示已打印部分的图形线条加粗处理。此外,在其他实施方式中,打印进度示意图的形状也可以是待打印3D对象的简化形状,例如可以是待打印3D对象的外轮廓缩小图。进一步地,显示打印进度示意图的步骤还包括:显示打印进度百分比。显示打印进度示意图的步骤还包括:从至少两个视图方向分别显示打印进度示意图,即显示两个打印进度示意图,该两个打印进度示意图分别为不同视角的3D模型的简化形状示意图。由于3D应用场景为利用3D模型来形成,因此本实施方式中,可以通过直接获取3D应用场景对应的3D模型来实现3D打印,而不需要在三维建模软件中重新构思、构建3D应用场景对应的3D模型,由此可减少3D打印时间,降低3D打印难度。并且,通过显示与待打印3D对象的形状相同的打印进度示意图,可以使得用户直观看到当前打印进度。本发明进一步在上述3D模型成型方法的基础上提出一种基于3D游戏应用场景的3D模型成型方法,如图2所示,当然本领域技术人员完全可以理解,上述基于3D游戏应用场景的3D模型成型方法也可以应用于其他的应用场景中,例如3D影视动画场景。用户在玩游戏过程中,除了得到游戏本身趣味性的享受和视觉上的享受外,更多用户希望可以对喜爱的游戏场景、角色或者与队友合影的画面进行纪念保存,而通过上述基于3D游戏应用场景的3D模型成型方法,可以满足用户的需求。如图2所示,上述基于3D游戏应用场景的3D模型成型方法具体包括以下步骤:步骤S201:根据用户选择从正在运行的3D游戏应用中获取对应选定游戏场景的待打印3D对象,其中,接收用户的截屏选择指令,以确定正在运行的3D游戏应用的界面中的截屏区域;选取截屏区域内所对应选定游戏场景的3D模型,以作为获取的待打印3D对象。3D游戏即三维游戏,其主要是在游戏中使用3D模型来制作人物角色、环境、机械、游戏道具等物体,使游戏玩家可以在游戏中体会到长宽高三种度量,以实现立体感。而3D游戏应用中的游戏场景则是由这些通过3D模型来实现的人物角色、环境、机械、游戏道具等物体所组成的画面。因此,在正在运行中的3D游戏应用中,显示界面所显示的游戏场景均与相应的3D模型对应,可以通过直接获取相应的3D模型以对相应游戏场景进行3D打印。本实施方式中,用户可通过截屏方式选择其所需要打印的3D模型。其中,本发明3D模型成型方法可通过安装于计算机上的3D打印应用来实现。当用户希望在进行3D游戏应用时将其所喜欢的某一游戏场景进行3D打印时,只需启动该3D打印应用即可。具体而言,在启动3D游戏应用之前,可先启动该3D打印应用。由此,在检测到用户启动3D游戏应用后,在3D游戏应用的界面上显示截屏悬浮窗操作界面,如图3所示,在正在运行的3D游戏应用的界面301的右上角,显示截屏悬浮窗操作界面302。或者,用户也可以不事先启动3D游戏应用,只需在计算机上预先安装该3D打印应用即可,在此情况下,计算机检测到用户启动3D游戏应用后,即自动激活该3D打印应用,并在3D游戏应用的界面301上显示截屏悬浮窗操作界面302。其中,所述截屏悬浮窗操作界面302为置顶显示在3D游戏应用的界面301中,截屏悬浮窗操作界面302中包括截屏按钮等各种功能按钮,其中图3中仅是示意性地示出部分功能按钮,并非是作为本发明的限制。当用户在游戏过程中,当需要对当前游戏界面显示的游戏场景进行3D打印时,可以通过点击截屏悬浮窗操作界面302中的截屏按钮以触发当前游戏界面进入截屏模式,进而用户可进行截屏操作。在截屏模式下,当前游戏界面将停留在点击截屏按钮时的游戏界面,从而用户可以利用鼠标或通过手指滑动来选择当前游戏界面中需要打印的游戏场景、对象。当用户选择当前游戏界面中某一游戏场景或对象后,可通过点击确认按钮来发出完成截屏选择的指令,如图4所示,虚线框中的场景元素表示用户所选择的游戏场景,在用户完成截屏操作后,可在截屏区域旁边显示“确认”和“重新选择”的按钮,当用户点击“确认”时则表示选择完成,当用户点击“重新选择”时则取消当前被选择的游戏场景的被选中状态,用户可重新进行截屏选择。截屏选择指令包括了点击截屏按钮的操作指令、用户选择当前游戏界面中的游戏场景的选择指令以及确认其所选择的游戏场景的确认指令。在接收到用户的截屏选择指令后,根据用户的截屏选择指令,确定正在运行的3D游戏应用的界面中的截屏区域,即用户所选定的需进行3D打印的游戏场景所在的区域。截屏区域可以默认为是整个游戏界面,当然,也可以是比较小的界面,比如用户所操纵的主角为中心的小范围界面。在确定截屏区域后,选取截屏区域内所对应选定游戏场景的3D模型,以作为获取待打印3D对象。其中,所对应选定游戏场景的3D模型是指在确定截屏区域后,对截屏区域内的游戏场景进行自动筛选,以从截屏区域内的游戏场景中选择预定场景,并获取的该预定场景所对应的3D模型。例如,可以设定为仅是针对人物角色进行3D打印,在确定截屏区域后,从截屏区域内的游戏场景中选定人物角色,并获取对应该选定的人物角色的3D模型,以作为待打印3D对象。当然,其他实施方式中,所对应选定游戏场景的3D模型也可以是截屏区域内的所有游戏场景对应的3D模型,即将选取的截屏区域内的所有游戏场景对应的3D模型作为获取的待打印3D对象。步骤S202:将获取的待打印3D对象转变成打印文件。步骤S203:将打印文件发送至3D打印机,以使得3D打印机根据打印文件进行3D打印。步骤S204:显示打印进度示意图,其中,打印进度示意图的形状与待打印3D对象的形状相同,打印进度示意图中的已打印部分和未打印部分的标记不相同。通过上述方式,用户在玩游戏过程中可将所喜欢的游戏场景打印出来变为实体物体所拥有,提高3D打印的趣味性,并且能够减少3D模型的建模时间。复杂的游戏场景通常由多帧游戏场景组成,本实施方式中,通过获取组成选定游戏场景的多帧游戏场景的相关数据以获取选定游戏场景对应的3D模型。具体地,在接收到用户的截屏选择指令以确定截屏区域后,参阅图5,选取截屏区域内所对应选定游戏场景的3D模型包括以下步骤:步骤S501:获取截屏区域内组成选定游戏场景的每帧游戏场景对应的单一模型的顶点坐标数据、纹理数据以及变换矩阵数据。其中,游戏在渲染每一帧图像时,通过绘制顶点数组中的顶点来绘制模型。获取顶点坐标数据的步骤为:通过对传入的顶点数组进行追踪,得到顶点数组的指针、绘制类型和数据保存类型等参数,并根据数据坐标类型以及顶点的个数,计算出顶点数组的大小。通过读取顶点数组的指针,以及计算得到的顶点数组的大小,获取并保存顶点坐标数据。此外,除了模型的顶点坐标数据,摄像机的设置、模型的旋转角度、方位、光照等参数也是形成场景过程中须设置的参数,通常调用矩阵类对这些参数进行设置。因此,本实施方式中,通过对四个参数的相关设置函数进行追踪,以获取场景中摄像头位置矩阵、旋转角度矩阵、方位矩阵、光照矩阵,并按照如下方法得到模型的变换矩阵数据:光照矩阵x摄像机位置矩阵x方位矩阵x旋转角度矩阵=变换矩阵此外,游戏场景的绘制中,使用纹理加载图片。本实施方式中,纹理数据包括纹理坐标以及纹理图片。其中,获取纹理坐标的具体步骤为:通过对传入的纹理数组进行追踪,得到纹理数组的指针、绘制类型和数据保存类型等参数,并根据这些参数以及纹理的个数,计算纹理数组的大小。通过读取纹理数组的指针以及纹理数组的大小,获取并保存纹理坐标。其中,获取纹理图片的具体步骤为:对纹理加载过程进行追踪,记录并保存纹理的ID、加载的纹理图片、图片分辨率以及图片格式等参数。由此,根据纹理ID找到图片数据,并通过图片分辨率以及图片格式计算图片缓存的大小,并进行保存,由此得到纹理图片。步骤S502:利用顶点坐标数据、纹理数据以及变换矩阵数据获取每帧游戏场景对应的单一模型。其中,利用公式:顶点坐标数据x变换矩阵数据,即可得到每帧游戏场景的模型框架,然后通过将模型框架和纹理数据按照通用的3D模型文件格式进行打包并保存,由此可得到每帧游戏场景对应的单一模型。步骤S503:将组成选定游戏场景的所有帧游戏场景分别对应的单一模型按照预定规则进行组合,进而得到选定游戏场景对应的3D模型。在获得每帧游戏场景对应的单一模型后,将每帧游戏场景对应的单一模型进行组合从而得到截屏区域内对应选定游戏场景的3D模型。其中,可以根据现有的游戏场景在绘制过程中使用的组合方法,将得到的多个单一模型进行组合以得到选定游戏场景对应的3D模型。通过上述方式,用户可以在游戏进行的任意时刻对显示的游戏场景进行截屏,从而根据用户的截屏操作获取截屏区域内的选定游戏场景的数据信息,如上所述的顶点坐标数据、纹理数据以及变换矩阵数据等,进而根据这些数据信息可获得选定游戏场景对应的3D模型。当然,在其他实施方式中,也可以通过获取选定游戏场景的目标文件的文件编码,即索引结构来获取相应的3D模型。此外,在其他实施方式中,还可以通过物理按键来进行截屏操作,例如对于个人计算机,可以通过按下指定的键盘按键进行截屏,或者,对于移动终端如手机、平板电脑等设备,可以通过同时按下锁屏键和音量键实现截屏操作。在本发明3D模型成型方法的又一实施方式中,进一步地,在接收到用户在正在运行的3D游戏应用的界面中的截屏选择指令,并确定正在运行的3D游戏应用的界面中的截屏区域后,不跳出正在运行的3D游戏应用的界面,即保持正在运行的3D游戏应用的界面为当前显示界面,并使在截屏区域之外的界面其他区域保持正常的3D游戏应用运行更新显示,而截屏区域之内则显示用户所选择的游戏场景。此外,在接收到用户在正在运行的3D游戏应用的界面中的截屏选择指令时,根据用户的截屏选择指令在界面中框选用户所选定的截屏区域,并使截屏区域的亮度大于截屏区域之外的界面其他区域的亮度,并保持界面其他区域正常的对3D游戏应用的操作处理。在本发明3D模型成型方法的又一实施方式中,进一步地,用户还可以对其所选择的游戏场景进行修改,以打印更具个性化的实体3D模型。具体地,参阅图6,在将获取的待打印3D对象转变成打印文件的步骤之前,并在获取对应选定游戏场景的3D模型之后,进一步包括如下步骤:步骤S601:接收用户的编辑请求。其中,可在截屏悬浮窗操作界面302中提供一编辑按钮,在未接收到用户的截屏选择指令之前,该编辑按钮为未激活状态,在接收到用户的截屏选择指令并选取截屏区域内的对应选定游戏场景的3D模型后,使该编辑按钮处于激活状态。或者,也可以是在接收到用户的截屏选择指令并并选取截屏区域内的对应选定游戏场景的3D模型后,在截屏区域的边缘附近自动显示处于激活状态的编辑按钮。由此,用户在选定了需要打印的游戏场景后,可通过点击该处于激活状态的编辑按钮来发出对其所选择的游戏场景对应的3D模型进行编辑的编辑请求。步骤S602:根据编辑请求显示3D模型编辑界面。计算机接收到用户的编辑请求后,从当前正在运行的3D游戏应用的界面中跳转至3D模型编辑界面,以对用户显示3D模型编辑界面。或者,也可以不跳出正在运行的3D游戏应用的界面,而是在正在运行的3D游戏应用的界面上以弹窗方式显示3D模型编辑界面。步骤S603:接收用户在3D模型编辑界面中对选取的3D模型进行修改、删除或增加的编辑指令。其中,如图7所示的3D模型编辑界面中,提供用户各种编辑工具,例如颜色修改、线条选择、增加文字、增加3D部件等工具。用户可在3D模型编辑界面中对其所选定的游戏场景所对应的3D模型进行编辑,例如可对3D模型的部件进行颜色、尺寸、材质、光照等校正与修复或修改处理,也可以将某部件进行删除,或者增加某一部件至3D模型中,还可以在3D模型中增加文字说明或个性签名等。此外,在3D模型编辑界面中还提供各种3D模型部件,用户可根据需要选择一种或多种3D模型部件至所选取的3D模型中以合并为一个3D模型,还可以从本地存储器中选择一个或多个3D模型添加至所选取的3D模型中以合并为一个3D模型。此外,还可以除去地板、水面等不需求或者失真的场景,或对某些部件进行特效处理,还可以选择将悬空的部件删除。步骤S604:根据编辑指令对选择的3D模型进行相应编辑,并将编辑后的3D模型作为获取的待打印3D对象。编辑指令即是指用户在3D模型编辑界面中输入的上述编辑操作指令,根据用户的编辑指令对3D模型进行相应编辑。用户在完成编辑后,可点击3D模型编辑界面中的完成编辑的按钮以发出编辑完成的确认指令。由此,根据用户的确认指令,将编辑之后的3D模型作为获取的待打印3D对象进行3D打印。通过提供对所选取的3D模型的二次编辑功能,可以满足更多用户的不同需求。在其他实施方式中,还可以通过向用户发出询问的方式来触发二次编辑功能。在接收到用户对其所选择的游戏场景的确认指令后,可弹出一对话框,对话框内容可以显示“是否需要对3D模型进行编辑”,并提供“是”、“否”两个选项。当用户选择对“是”选项时则显示3D模型编辑界面;当用户选择“否”选项时则不对3D模型进行编辑,并将选取的3D模型转变为打印文件并发送给3D打印机进行3D打印。在本发明3D模型成型方法的又一实施方式中,进一步地,用户还可以选择将其所选择的游戏场景与其他玩家共享。例如当用户所选择的游戏场景为:用户在游戏中的人物角色与其他游戏玩家的人物角色在某一时刻下的攻击姿势,或者用户的人物角色与其他游戏玩家的人物角色的合影。为使得游戏各方对打印的3D模型都较为满意,可将待打印3D对象发送给其他玩家以进行确认。具体地,本实施方式中,3D游戏应用为在线交互应用。在确定截屏区域并从截屏区域中选取待打印的3D模型后,将截屏区域和3D模型的3D预览图共享给3D游戏应用的另一交互方或多个交互方。其中,用户在选择截屏区域后,可通过截屏悬浮窗操作界面302中的共享按钮发出共享请求,从而根据用户的共享请求将截屏区域和获取的3D模型的3D预览图共享给用户所选择的另一交互方或多个交互方。或者,也可以是在接收到用户的截屏选择指令并从截屏区域中选取对应选定游戏场景才3D模型后,自动将截屏区域和3D模型的3D预览图共享给其他交互方。其中,共享的方式,例如可以是将截屏区域以及3D模型的3D预览图在当前交互的3D游戏应用的界面上对其他交互方进行显示,也可以是将截屏区域以及3D模型的3D预览图发送给其他交互方,以在其他交互方的显示界面上进行显示。由此,可使得其他交互方获知用户所选择的需要打印的3D对象,从而可以进行确认或给出意见等。在接收到其他交互方对3D模型的预览图的确认指令后,执行将待打印3D对象转变成打印文件的步骤。或者,不需要接收其他交互方对3D模型的预览图的确认指令,而是将截屏区域和3D模型的3D预览图共享给其他交互方后即执行将待打印3D对象转变成打印文件的步骤。另外,当用户对3D模型进行编辑时,还可以将3D模型编辑界面及编辑中或编辑后的3D模型的3D预览图共享给3D游戏应用的其他交互方。其中,在显示3D模型编辑界面后,用户可通过点击3D模型编辑界面中的共享按钮发出共享请求,由此根据该共享请求将编辑界面和编辑中或编辑后的3D模型的3D预览图共享给3D游戏应用的其他交互方,以使得其他交互方可观看到用户对3D模型的编辑,以及编辑后的3D模型的3D预览图。此外,用户也可以将对3D模型的编辑权授权给其他交互方,其他交互方可在共享的3D模型编辑界面中输入对3D模型的修改、删除或增加的编辑指令。通过接收其他交互方的编辑指令,对3D模型进行相应编辑,并将编辑后的3D模型作为获取的待打印3D对象。在本发明3D模型成型方法的又一实施方式中,用户还可以对其所选择的游戏场景对应的3D模型进行预置部件的打印设置。预置部件是指额外设置在3D模型中的其他部件,用于在完成3D模型的3D打印后或打印前放置在打印得到的实体3D模型中的部件。预置部件可以是非3D打印部件,也可以是3D打印部件。具体地,可以在截屏悬浮窗操作界面302或3D模型的编辑界面提供预置部件选择按钮。在选取截屏区域内所对应选定游戏场景的3D模型之后,通过预置部件选择按钮接收用户对预置部件的设置请求。其中,在接收到用户的预置部件设置请求后,显示自定义打印设置窗口。在自定义打印设置窗口中提供多种预置部件,用户可选择其中一种或多种进行设置。具体地,接收用户在自定义打印设置窗口中选择预置部件的选择指令。其中,该选预置部件的选择指令包括用户选择预置部件类型(例如预置部件为小红旗、气球等)的选择指令,以及在自定义打印设置窗口中对所选取的3D模型或其部分部件进行选中或对3D模型之外的预定位置的选中的选择指令,以根据用户选择预置部件类型的选择指令确定用户所选择的预置部件的类型,以及根据用户对所选取的3D模型或其部分部件进行选中或对3D模型之外的预定位置的选中的选择指令确定预置部件在3D模型中放置的位置,进而得到预置部件的选择信息。接收到用户的选择预置部件的选择指令后,接收用户对其所选择的预置部件的确认指令,并根据该确认指令将选取的3D模型转变成打印文件,其中打印文件中包括预置部件的选择信息,以使得3D打印机在根据打印文件进行3D打印时,根据预置部件的选择信息选择不对3D模型中用于放置预置部件的位置的部分进行3D打印。具体地,在将选取的3D模型转变成打印文件的步骤中,在用户对所选取的3D模型或其部分部件进行选中的情况下,将被选中的3D模型或其部分部件作为预置部件替换部分,将除被选中的3D模型或其部分部件之外的其他3D模型部分作为最终需打印的3D对象,并将最终需打印的3D对象转变成打印文件,并且在最终需打印的3D对象与预置部件连接处进行方便连接、固定预置部件的设计。其中,打印文件中包括在最终需打印的3D对象的与预置部件连接处进行的方便连接、固定预置部件的设计的信息。由此,在3D打印机根据该打印文件打印得到的实体3D模型中,可以将预置部件固定在实体3D模型中。举例而言,假设用户选择的预置部件为带旗杆的红旗。用户将其所选择的游戏场景对应的3D模型中的某一块草地进行选中,由此根据用户的选中操作确定了用户所选择的红旗所放置的位置,即被选中的草地所在的位置。在生成打印文件时,将3D模型中除被选中的草地之外的其他3D模型作为最终需打印的3D模型,即不对被选中的草地进行3D打印,以使得在打印得到的实体3D模型中,被选择的草地所在的位置为留空。将最终需打印的3D模型转变成打印文件。其中,在最终需打印的3D对象与预置部件连接处进行方便、固定预置部件的设计为:使被选中的草地所在的位置设计为与红旗的旗杆的大小和形状相匹配的孔洞,打印文件中包括了使被选中的草地所在的位置与红旗的旗杆的形状和大小相匹配的信息,由此在3D打印机根据该打印文件进行3D打印得到实体3D模型后,可以将与用户所选择的红旗对应的实体红旗插入并固定在实体3D模型中被选中的草地所在的位置的孔洞中。在用户对所选取的3D模型之外的预定位置进行选中的情况下,根据用户的选中操作,将所选取的3D模型作为最终需打印的3D对象,并将最终需打印的3D对象转变成打印文件,并且在最终需打印的3D对象的所述预定位置进行方便连接、固定预置部件的设计。其中,打印文件中包括在最终需打印的3D对象的预定位置进行的方便连接、固定预置部件的设计的信息。通过上述方式,用户可以选择所喜欢的预置部件放置在待打印3D对象中,以获得更具个性化的实体3D模型。并且,通过在最终需打印的3D对象中进行方便连接、固定预置部件的设计,由此可使得预置部件与打印得到的实体3D模型更完美结合,有利于实体3D模型更美观。在本发明3D模型成型方法的又一实施方式中,还可以对3D模型的打印品质或打印效果进行设置。其中,打印品质类型或打印效果类型的选择功能可以在3D模型编辑界面中实现,也可以设置在自定义打印窗口中实现,还可以是在截屏模式下实现。打印品质类型包括分辨率类型,分辨率越高打印出来的实体3D模型越精致;打印效果类型包括打印的尺寸类型,选择的打印尺寸越大打印出来的实体3D模型越大,用户可选择不同的分辨率和不同尺寸对其所选择的3D模型进行3D打印。本实施方式中,在将待打印3D对象转变成打印文件之前,接收用户选择打印品质类型或打印效果类型的选择信息。其中,用户可通过点击3D模型编辑界面或截屏悬浮窗操作界面中的分辨率选择按钮和打印尺寸选择按钮选择分辨率类型和打印尺寸类型,从而根据用户的选择得到打印品质类型或打印效果类型的选择信息。进一步地,用户在选择分辨率类型和打印尺寸类型时,向用户显示其所选择的分辨率类型和打印尺寸类型对应的预览效果图。用户可参考预览效果图选择其所需的分辨率或打印尺寸。其中,在将待打印3D对象转变为打印文件时,打印文件中包括用户所选择的打印品质类型或打印效果类型的选择信息,以使得3D打印机根据打印文件打印出符合要求的实体3D模型。在本发明3D模型成型方法的又一实施方式中,在将获取的待打印3D对象转变成打印文件之前,所述方法进一步包括:检测选取的3D模型中是否存在两个以上相互独立而无直接或间接联系的部件;当选取的3D模型中存在两个以上相互独立而无直接或间接联系的部件时,使两个以上相互独立而无直接或间接联系的部件建立连接关系,并将建立连接关系之后的3D模型作为获取的待打印3D对象。其中,上述步骤可以是在选取截屏区域内的3D模型之后、将获取的3D模型转变成打印文件之前进行,以判断3D模型是否满足打印要求。由于3D打印技术中难以实现悬空部件的打印,因此,本实施方式中,在打印之前对3D模型的可打印性进行检测,以检测所选取的3D模型是否符合打印要求,并在不符合打印要求时对3D模型自动进行修改。其中,当检测到选取的3D模型中存在两个以上相互独立而无直接或间接联系的部件时,即3D模型中存在悬空部件,此时3D模型不满足打印要求。举例而言,当选取的3D模型包括树木和月亮两个部件,当检测到树木和月亮之间没有连接时,即选取的3D模型中存在两个相互独立的部件,月亮相对于树木而言可认为为悬空部件,此时,可自动将树木和月亮建立连接关系,以使得3D模型符合打印要求。在自动建立相互独立的部件之间的连接关系后,将建立连接关系之后的3D模型作为待打印3D对象,以将待打印3D对象转变为打印文件并发送给3D打印机,从而实现3D打印。其中,还可以根据用户意愿来决定是否建立连接关系。例如,当检测到选取的3D模型中存在两个以上相互独立而无直接或间接的部件时,可以弹出对话框以向用户发出询问。对话框内容可显示“是否需要建立连接关系”,并提供“是”和“否”两个选项。当用户选择“是”选项时,则对相互独立的部件建立连接关系,当用户选择“否”选项时,可以弹出显示“当前模型不符合打印要求,请重新选择”的文字的窗口。其中,在其他实施方式中,当检测到存在两个相互独立而无直接或间接连接的部件时,还可以对其中的一个部件自动建立支撑架,以避免该部件悬空,从而使得3D模型符合打印要求。其中,建立连接关系或建立支撑架是指建立可3D打印的连接关系或可3D打印的支撑架,以使得所选取的3D模型符合打印要求。或者,建立连接关系或建立支撑架还可以是在3D打印之外的另外设置的部件。例如,可以对所选取的3D模型中的相互独立的两个部件分别进行3D打印,在打印之后另外设置连接部件以将3D打印后的两个实体部件建立连接关系,或者对3D打印后的为悬空部件的实体部件设置支撑架。此外,为了提高打印之后的实体3D模型的可靠性,避免尺寸较小的部件在打印出来后易破碎,在本实施方式中,对3D模型的检测还包括:检测所选取的3D模型中是否存在尺寸小于预定值的部件;当所选取的3D模型中存在尺寸小于预定值的部件时,调整尺寸小于预定值的部件的尺寸,以使得部件的尺寸大于或等于预定值,并将调整之后的3D模型作为获取的待打印3D对象。当3D模型中存在尺寸小于预定值的部件时,3D模型不符合打印要求,此时可以对尺寸较小的部件进行自动加固或增强处理,以增大该部件的尺寸,使得该部件的尺寸满足打印要求,并将调整后的3D模型作为待打印3D对象,以将待打印3D对象转变为打印文件发送给3D打印机,实现3D打印。通过上述方式,可以提高实体3D模型的可靠性。或者,还可以对尺寸小于预定值的部件进行特殊标记,以提醒用户该部件为易破碎部件。此外,当用户选择对3D模型进行二次编辑时,可以是在接收到用户对其所做的编辑的确认指令后,对3D模型进行检测以检测编辑后的3D模型是否满足打印要求。或者,也可以在3D模型编辑界面中提供检测按钮,用户可通过该检测按钮来自主选择是否对3D模型进行可打印性检测。本发明3D模型成型方法的又一实施方式中,在将选取的3D模型转变成打印文件之前,还进行如下步骤:检测用户是否完成3D打印手续,当检测到用户完成3D打印手续后,生成在线打印订单,并在生成在线打印订单之后执行将选取的3D模型转变成打印文件的步骤。其中,3D打印手续是指用户支付本次3D打印所需费用的支付手续,用户可选择使用支付宝、在线网银等方式进行支付,或者用户也可以选择货到付款的支付方式。所述在线打印订单包括用户的收货地址信息、支付信息以及用户所选择的3D模型的信息。由此,在3D打印机根据打印文件进行3D打印之后,可根据在线打印订单将打印出来的实体3D模型通过快递等方式邮寄至在线打印订单中的收货地址中,从而完成交易过程。例如,用户在使用在线交互3D游戏应用过程中,使用截屏指令获得截屏区域,确定要打印的3D对象后,点击在线交互3D游戏应用界面中的“打印”按钮或快捷键,则系统自动采用用户在此在线交互3D游戏应用中的账号在游戏服务器中触发相应操作、或登陆交易3D打印服务的服务器,进而自动生成订单,根据订单进行后续的3D打印并送货到用户指定地址。参阅图8,本发明3D打印系统一实施方式中,包括获取模块401、第一处理模块402、发送模块403以及第一显示模块404。其中,获取模块401用于根据用户选择从预定应用场景中获取用户所选择的待打印3D对象;第一处理模块402用于将获取的待打印3D对象转变成打印文件;发送模块403用于将打印文件发送至3D打印机,以使得3D打印机根据打印文件进行3D打印;第一显示模块404用于在将3D打印文件发送给3D打印机以进行3D打印后,显示打印进度示意图,其中,打印进度示意图的形状与待打印3D对象的形状相同或是待打印3D对象的简化形状,打印进度示意图中的已打印部分和未打印部分的标记不相同。进一步地,第一显示模块404还用于显示打印进度百分比。此外,在显示打印进度示意图时,进一步从至少两个视图方向分别显示打印进度示意图。其中,3D打印系统例如可以使用个人计算机设备、移动终端、平板电脑等电子设备实现,其与3D打印机通过有线或无线等方式连接,或者还可以是与3D打印机没有连接,而是通过将打印文件拷贝至3D打印机的方式实现3D打印机的3D打印。此外,本实施方式中,3D打印系统进一步还包括第一接收模块405、第二显示模块406、第二接收模块407、第一编辑模块408、检测模块409、第二编辑模块501、共享模块502、预置部件设置模块503、打印设置模块504以及订单生成模块505。在本实施方式中,预定应用场景是3D游戏应用场景,获取模块401具体用于根据用户选择从正在运行的3D游戏应用中获取对应选定游戏场景的待打印3D对象。当然,在其他实施方式中,预定应用场景也可以是3D影视场景等其他3D应用场景。进一步地,获取模块401包括接收单元4011和选取单元4012。接收单元4011用于接收用户的截屏选择指令,以确定正在运行的3D游戏应用的界面中的截屏区域;选取单元4012用于选取截屏区域内所对应选定游戏场景的3D模型,以作为获取的待打印3D对象。进一步地,选取单元4012包括第一获取子单元601、第二获取子单元602以及第三获取子单元603。其中,第一获取子单元601用于获取截屏区域内组成选定游戏场景的每帧游戏场景对应的单一模型的顶点坐标数据、纹理数据以及变换矩阵数据;第二获取子单元602用于利用顶点坐标数据、纹理数据以及变换矩阵数据获取每帧游戏场景对应的单一模型;第三获取子单元603用于将组成选定游戏场景的所有帧游戏场景分别对应的单一模型按照预定规则进行组合,进而得到选定游戏场景对应的3D模型。其中,可通过在3D游戏应用的界面显示的截屏悬浮窗操作界面来接收用户的截屏选择指令。此外,接收单元4011接收到用户的截屏选择指令并确定截屏区域后,不跳出正在运行的3D游戏应用的界面,即保持正在运行的3D游戏应用的界面为当前显示界面,并使在截屏区域之外的界面其他区域保持正常的预定应用运行更新显示,而截屏区域之内则显示用户所选择的游戏场景。并且,接收单元4011在接收到用户的截屏选择指令时,根据用户的截屏选择指令在正在运行的3D游戏应用的界面中框选截屏区域,并使截屏区域的亮度大于截屏区域之外的界面其他区域的亮度,并保持界面其他区域正常的对3D游戏应用的操作处理。其中,共享模块502用于在接收单元4011确定截屏区域后以及选取单元4012从截屏区域中选取对应选定游戏场景的3D模型后,根据用户通过截屏悬浮窗操作界面的共享按钮发出的共享操作指令将截屏区域以及选取的3D模型的3D预览图共享给3D游戏应用的另一交互方。其中,第一接收模块405用于在第一处理模块402将选取的3D模型转变成打印文件之前且在选取单元4012从截屏区域中选取对应选定游戏场景的3D模型之后,接收用户的编辑请求。第二显示模块406用于根据用户的编辑请求显示3D模型编辑界面。第二接收模块407用于接收用户在3D模型编辑界面中对选取的3D模型进行修改、删除或增加的编辑指令。第一编辑模块408用于根据编辑指令对选取的3D模型进行相应编辑,并将编辑后的3D模型作为获取的待打印3D对象。此外,共享模块502还用于将第二显示模块406显示的3D模型编辑界面共享给3D游戏应用的另一交互方,即用户可在3D模型编辑界面中选择共享按钮以将3D模型编辑界面及编辑中的3D模型的3D预览图共享给另一交互方。其中,在完成对3D模型的编辑后,用户可以通过点击3D模型编辑界面中的预置部件按钮进行预置部件的设置。其中,在第一编辑模块408完成编辑后,预置部件设置模块503用于接收用户的预置部件设置请求,并根据用户的预置部件设置请求显示自定义打印设置窗口,以在自定义打印设置窗口中接收用户选择预置部件的选择指令,以获取预置部件的选择信息。当然,在其他实施方式中,用户也可以是在截屏之后通过截屏悬浮窗操作界面上的预置部件按钮设置预置部件。其中,用户在选择预置部件之后,还可以进行打印品质类型或打印效果类型的设置。打印设置模块504用于在预置部件设置模块503获取用户的预置部件的选择信息后,接收用户选择打印品质类型或打印效果类型的选择信息。其中打印品质类型包括分辨率类型,分辨率越高打印出来的实体3D模型越精致;打印效果类型包括打印的尺寸类型,选择的打印尺寸越大打印出来的实体3D模型越大,用户可选择不同的分辨率和不同尺寸对其所选择的3D模型进行3D打印。此外,打印设置模块504还用于在用户选择打印品质类型或打印效果类型时,向用户显示其所选择的打印品质类型或打印效果类型对应的预览效果图,以供用户参考。其中,在接收到用户对其所选择的打印品质类型或打印效果类型对应的预览效果图的确认指令后,例如用户可通过点击“打印”进行确认,此时说明用户已完成对3D模型的各种编辑、设置等。此时,订单生成模块505用于检测用户是否完成3D打印手续,当检测到用户完成3D打印手续后,生成在线打印订单。其中,3D打印手续是指用户支付本次3D打印所需费用的支付手续,用户可选择使用支付宝、在线网银等方式进行支付,或者用户也可以选择货到付款的支付方式。所述在线打印订单包括用户的收货地址信息、支付信息以及用户所选择的3D模型的信息。此外,在接收到用户对其所选择的打印品质类型或打印效果类型对应的预览效果图的确认指令后,检测模块409用于检测在第一编辑模块408进行相应编辑后的3D模型是否存在两个以上相互独立而无直接或间接连接的部件和/或检测编辑后的3D模型中是否存在尺寸小于预定值的部件。第二编辑模块501用于当3D模型中存在两个以上相互独立而无直接或间接连接的部件时,使两个以上相互独立而无直接或间接连接的部件建立连接关系或对其中悬空的部件建立支撑架。以及,第二编辑模块409用于当3D模型中存在尺寸小于预定值的部件时,调整尺寸小于预定值的部件的尺寸,以使得该部件的尺寸大于或等于预定值。并且,第二编辑模块501还用于将建立连接关系或建立支撑架、和/或调整尺寸后的3D模型作为获取的待打印3D对象,由此,可使得不满足打印要求的3D模型自动进行修改以满足打印要求,并且通过对不符合尺寸要求的部件的尺寸进行自动调整,可以提高3D模型部件的可靠性。第一处理模块402用于根据在线打印订单将建立连接关系或建立支撑架的、和/或调整尺寸后的3D模型转变成打印文件,其中,打印文件中包括预置部件的选择信息以及打印品质类型或打印效果类型的选择信息。从而,在发送模块403将打印文件发送给3D打印机进行3D打印后,使得3D打印机根据打印文件进行打印时,根据预置部件的选择信息选择不对3D模型中放置预置部件的位置的部分进行3D打印,以在3D打印之后可将预置部件放置在打印后得到的实体3D模型中的相应位置,以及根据打印品质类型或打印效果类型的选择信息打印符合要求的实体3D模型。在完成上述3D模型的打印后,可根据在线打印订单中的收货人信息将打印出来的实体3D模型通过快递等方式送至指定地点,从而完成交易。通过本实施方式的3D打印系统,可以直接获取3D应用场景对应的3D模型来实现3D打印,而不需要在三维建模软件中重新构思、构建3D应用场景对应的3D模型,由此可减少3D打印时间,降低3D打印难度。并且,用户还可以根据个人喜好对3D模型进行二次编辑,以及进行预置部件、打印品质等设置,以打印更具个性化的3D产品。以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1