一种三维数据的3d视图绘制方法及系统的制作方法

文档序号:9201008阅读:664来源:国知局
一种三维数据的3d视图绘制方法及系统的制作方法
【技术领域】
[0001]本发明涉及三维数据处理领域,尤其涉及一种三维数据的3D视图绘制方法及系统。
【背景技术】
[0002]目前,利用专业三维软件设计出的三维物体模型信息是三维空间的,由于显示技术的局限,只能在平面的显示器上通过展示有透视、光照、颜色信息的平面图来展示物体的三维信息,而不能通过3D引擎实现3D视图的生成。用平面图进行展示,对结构相对简单的物体,还可以较好的展示物体信息,但对于对较为复杂的物体,如发动机构造图等,由于细节太多,平面图所展示出的立体感知效果就不够理想了。销售行业人员在所售产品因体积重量等限制无法携带时,通过资料也无法很好展示。在3D打印方面,用户在得到三维数据文件,打印前预览效果不够直观,需要将三维数据绘制成视图。

【发明内容】

[0003]本发明实施例提供一种三维数据的3D视图绘制方法及系统,用于解决现有技术中:通过3D引擎实现三维数据的3D视图的生成的问题。
[0004]本发明实施例采用以下技术方案:
[0005]一种三维数据的3D视图绘制方法,该方法包括:
[0006]将获取到的三维数据文件解析成与3D引擎匹配的格式的三维数据,并传送给所述3D引擎;
[0007]调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图和3D右眼视图。
[0008]优选的,所述三维数据文件为通过3D设计软件导出的三维数据文件或3D扫描仪扫描得到的三维数据文件。
[0009]优选的,所述调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图和3D右眼视图,包括:
[0010]针对预设用于模拟人的右眼位置的3D引擎相机位置参数和用于模拟人的右眼视线方向的3D引擎相机方向参数来调用所述3D引擎的绘图指令,绘制所述三维数据的3D右眼视图;
[0011]针对预设用于模拟人的左眼位置的3D引擎相机位置参数和用于模拟人的左眼视线方向的3D引擎相机方向参数来调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图。
[0012]优选的,所述用于模拟人的左眼视线方向和所述用于模拟人的右眼视线方向均为从所述相机位置指向三维数据的物体预设中心的方向,且所述用于模拟人的左眼视线方向和所述用于模拟人的右眼视线方向相差2至10度。
[0013]优选的,所述调用所述3D引擎的绘图指令之前,还包括:
[0014]获取裸眼3D显示屏上的3D左眼图显示区和3D右眼图显示区;
[0015]所述绘制所述三维数据的3D左眼视图和3D右眼视图,包括:
[0016]判断当前绘制的像素区域是否对应所述3D右眼图显示区,若是,则在所述像素区域绘制所述3D右眼视图的对应区域,若不是,则在所述像素区域绘制所述3D左眼视图的对应区域。
[0017]优选的,所述调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图和3D右眼视图,包括:
[0018]通过触屏获取到用户输入的操作指令特征,根据预置算法对所述操作指令特征进行处理,更新所述3D引擎的绘图指令参数;
[0019]针对所得到的3D引擎的绘图指令参数调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图和3D右眼视图。
[0020]优选的,所述通过触屏获取到用户输入的操作指令特征,根据预置算法对所述操作指令特征进行处理,更新所述3D引擎的相应绘图指令参数,包括:
[0021]若通过触屏实时获取到用户输入的旋转操作指令向量,则根据预置的旋转算法对所述旋转操作指令特征向量进行处理,更新所述3D引擎的相机位置参数和相机视线参数;
[0022]若通过触屏实时获取到用户输入的平移操作指令向量,则根据预置的平移算法对所述平移操作指令向量进行处理,更新所述3D引擎的相机位置参数和缩放基准点;
[0023]若通过触屏实时获取到用户输入的缩放操作指令距离,则根据预置的缩放算法对所述缩放操作指令距离进行处理,更新所述3D引擎的缩放系数。
[0024]—种三维数据的3D视图绘制系统,该系统包括:
[0025]解析单元,用于将获取到的三维数据文件解析成与3D引擎匹配的格式的三维数据,并传送给所述3D引擎;
[0026]视图绘制单元,用于调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图和3D右眼视图。
[0027]优选的,所述三维数据文件为通过3D设计软件导出的三维数据文件或3D扫描仪扫描得到的三维数据文件。
[0028]优选的,视图绘制单元,具体用于:
[0029]针对预设用于模拟人的右眼位置的3D引擎相机位置参数和用于模拟人的右眼视线方向的3D引擎相机方向参数来调用所述3D引擎的绘图指令,绘制所述三维数据的3D右眼视图;
[0030]针对预设用于模拟人的左眼位置的3D引擎相机位置参数和用于模拟人的左眼视线方向的3D引擎相机方向参数来调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图。
[0031]优选的,还包括显示区获取单元,用于获取裸眼3D显示屏上的3D左眼图显示区和3D右眼图显不区;
[0032]所述视图绘制单元,具体用于:调用所述3D引擎的绘图指令,判断当前绘制的像素区域是否对应所述3D右眼图显示区,若是,则在所述像素区域绘制所述3D右眼视图的对应区域,若不是,则在所述像素区域绘制所述3D左眼视图的对应区域。
[0033]优选的,所述视图绘制单元包括:
[0034]参数更新模块,用于通过触屏获取到用户输入的操作指令特征,根据预置算法对所述操作指令特征进行处理,更新所述3D引擎的绘图指令参数;
[0035]更新绘制模块,用于针对所得到的3D引擎的绘图指令参数调用所述3D引擎的绘图指令,绘制所述三维数据的3D左眼视图和3D右眼视图。
[0036]与现有技术相比,本发明的一种三维数据的3D视图绘制方法及系统,具有以下有益效果:通过在智能终端结合3D引擎,可以得到用于组合出物体逼真的立体影像的3D视图,使用户通过绘制的3D左眼视图和3D右眼视图的组合可以直观的看到复杂三维物体中的细节,可以在移动终端中实现,不受地理条件限制,采用可交互设计,便于用户手势操作实时地旋转、平移、缩放可对应生成不同视角和缩放比例的3D视图,用户体验更好。若获取裸眼3D显示屏上的3D左眼图显示区和3D右眼图显示区,则可以通过判断绘制像素区域对应的显不区来提尚绘制速度。
【附图说明】
[0037]为了更清楚地说明本发明实施例中的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本发明实施例的内容和这些附图获得其他的附图。
[0038]图1是本发明提供的一种三维数据的3D视图绘制方法的第一个实施例的方法流程图一。
[0039]图2是本发明提供的一种三维数据的3D视图绘制方法的第一个实施例的方法流程图二。
[0040]图3是本发明提供的一种三维数据的3D视图绘制方法的第二个实施例的方法流程图。
[0041]图4是本发明提供的一种三维数据的3D视图绘制系统的第一个实施例的结构框图一。
[0042]图5是本发明提供的一种三维数据的3D视图绘制系统的第一个实施例的结构框图二。
[0043]图6是本发明提供的一种三维数据的3D视图绘制系统的第二个实施例的结构框图。
【具体实施方式】
[0044]为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本发明实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0045]参见图1,图1为本发明提供的一种三维数据的3D视图绘制方法第一个实施例的方法流程图。本实施例的方法主要由智能终端来执行。其中,所述智能终端的硬件装置包括但不限于:个人电脑、笔记本电脑、手机、平板电脑等。该智能终端可以为带有柱镜或光栅的显示屏为裸眼3D显示屏,也可以为普通显示屏幕,该实施例包括以下步骤:
[0046]步骤101:将获取到的三维数据文件解析成与3D引擎匹配的格式的三维数据,并传送给3D引擎。
[0047]其中,三维数据文件为通过3D设计软件导出的三维数据文件或3D扫描仪扫描得到的。
[0048]例如,Anroid平台中,将至少一个stl格式文件和/或至少一个obj格式文件解析成与opengl es引擎匹配的三维数据,并传送给opengl es引擎。具体的,读取至少一个stl格式文件和/或至少一个obj格式文件,将其中的三维坐标数据、纹理坐标数据、顶点法向量数据读取到内存重新组装成opengl es引擎接口可接收的数据形式(一种数组形式)。由于不同格式的数据组织方式不一样,所以读取的时候,会根据各格式的组织方式,找到显示需要的数据,读进opengl es引擎,便于应用在3D设计的成果展示或3D打印的前期预览中,且通过安卓平台可以不受地理限制地,随时随地的进行展示。具体解析方法为本领域技术人员可以实现,在此不再赘述。
[0049]步骤102:调用3D引擎的绘图指令,绘制三维数据的3D左眼视图和3D右眼视图。3D左眼视图为模拟人左眼看到的3D物体的视图,3D右眼视图为模拟人右眼看到的3D
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1