一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

将多种图模文件格式转换为统一格式的方法、装置及设备与流程

2021-10-24 12:41:00 来源:中国专利 TAG:文件格式 转换为 装置 多种 公开


1.本公开涉及图模文件格式转换技术领域,尤其涉及一种将多种图模文件格式转换为统一格式的方法、装置及设备。


背景技术:

2.在建筑工程的建设施工中,从研发阶段到竣工或运维阶段会产生大量的图纸模型(简称为“图模”),不同的图模往往具有不同的文件格式,而不同文件格式的图模需要采用不同的软件或图形引擎打开,例如:dwg格式的图模需要采用autocad软件来打开。
3.由于各建设施工的参与方在各自终端上所使用的软件并不统一,如果需要打开某一文件格式的图模,需要分别将图模转换为不同软件对应的文件格式,导致在不同的使用场景下,需要借助不同的软件或图形引擎进行操作。因此,无法实现通过一次转换服务就可用于多个使用场景,导致图模格式转换的体验感降低,增加了图模文件的格式转换成本和开发工作量。


技术实现要素:

4.有鉴于此,本公开实施例提供了一种将多种图模文件格式转换为统一格式的方法、装置及设备,以解决现有技术存在的无法实现通过一次转换服务就可用于多个使用场景,图模文件的格式转换成本和开发工作量大的问题。
5.本公开实施例的第一方面,提供了一种将多种图模文件格式转换为统一格式的方法,包括:获取二维图纸文件和三维模型文件,二维图纸文件和三维模型文件对应各自的初始文件格式;提取二维图纸文件中的几何对象和属性对象的第一信息,并根据第一信息生成统一文件格式的二维图纸文件;提取三维模型文件中的几何对象和属性对象的第二信息,并根据第二信息生成统一文件格式的三维模型文件;通过多个客户端中的至少一种图形引擎对统一文件格式的二维图纸文件或统一文件格式的三维模型文件进行加载和渲染,其中统一文件格式表示适用于多个图形引擎的通用格式。
6.本公开实施例的第二方面,提供了一种将多种图模文件格式转换为统一格式的装置,包括:获取模块,被配置为获取二维图纸文件和三维模型文件,二维图纸文件和三维模型文件对应各自的初始文件格式;第一转化模块,被配置为提取二维图纸文件中的几何对象和属性对象的第一信息,并根据第一信息生成统一文件格式的二维图纸文件;第二转化模块,被配置为提取三维模型文件中的几何对象和属性对象的第二信息,并根据第二信息生成统一文件格式的三维模型文件;加载渲染模块,被配置为通过多个客户端中的至少一种图形引擎对统一文件格式的二维图纸文件或统一文件格式的三维模型文件进行加载和渲染,其中统一文件格式表示适用于多个图形引擎的通用格式。
7.本公开实施例的第三方面,提供了一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现上述方法的步骤。
8.本公开实施例的第四方面,提供了一种计算机可读存储介质,该计算机可读存储
介质存储有计算机程序,该计算机程序被处理器执行时实现上述方法的步骤。
9.本公开实施例采用的上述至少一个技术方案能够达到以下有益效果:通过获取二维图纸文件和三维模型文件,二维图纸文件和三维模型文件对应各自的初始文件格式;提取二维图纸文件中的几何对象和属性对象的第一信息,并根据第一信息生成统一文件格式的二维图纸文件;提取三维模型文件中的几何对象和属性对象的第二信息,并根据第二信息生成统一文件格式的三维模型文件;通过多个客户端中的至少一种图形引擎对统一文件格式的二维图纸文件或统一文件格式的三维模型文件进行加载和渲染,其中统一文件格式表示适用于多个图形引擎的通用格式。本方案能够实现通过一次转换服务就可使图模文件适用于不同的软件或图形引擎,降低了对图模文件进行格式转换的时间,提升了图模格式转换的体验感,降低了因不同格式转换及不同图形引擎的接入时的开发工作量和转换成本。
附图说明
10.为了更清楚地说明本公开实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
11.图1是相关技术在实际应用场景下的图模文件的格式转换过程的示意图;图2是本公开实施例提供的一种将多种图模文件格式转换为统一格式的方法的流程示意图;图3是本公开实施例在实际应用场景下的图模文件的格式转换过程的示意图;图4是本公开实施例在实际应用场景下经统一格式转换以及渲染后的图模文件的示意图;图5是本公开实施例提供的一种将多种图模文件格式转换为统一格式的装置的结构示意图;图6是本公开实施例提供的电子设备的结构示意图。
具体实施方式
12.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本公开实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本公开。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本公开的描述。
13.在建筑过程的建设施工领域中,不同的使用场景下需要不同的格式转换服务以及不同的软件或者图形引擎,这里不同的使用场景是指不同格式的图模文件,不同格式的图模文件对应的格式转化服务的算法也是不同的,因此,在使用不同的软件或者图形引擎来读取同一格式的图模文件时,需要先将该图模文件转换为不同软件或者图形引擎所对应的格式。例如,假设需要使用不同的软件(如autodesk revit、sketchup、3d studio max)读取dwg格式的图模文件,那么需要将dwg格式的图模文件分别转换为rvt格式、skp格式以及3ds格式的图模文件,再将格式转换后的图模文件分别使用上述软件进行读取和呈现。发明人
研究发现,需要提供一种能够通过一次转换服务就可适用不同软件或图形引擎,提升图模格式转换的体验感,降低图模格式转换成本和开发工作量的图模文件的格式转换方案由此可见,使用不同的软件或者图形引擎打开同一格式的图模文件时,需要将某一格式的图模文件分别转换为不同软件或图形引擎对应的格式,显然,这种格式转换方式增加了格式转换服务的操作时间,降低了格式转换服务操作的体验感,不同软件或者图形引擎的转换服务也不统一。并且,针对不同格式的图模文件,在使用不同的软件或图形引擎对图模文件进行接入时,将会极大增加后台人员的开发工作量,导致开发和维护成本提高。
14.下面以施工图纸的在线协同审核的场景为例,对相关技术中施工图纸的格式转换服务的实现过程进行说明。图1是相关技术在实际应用场景下的图模文件的格式转换过程的示意图。如图1所示,该相关技术中图模文件的格式转换过程主要包括以下内容:将施工图纸制作完成之后,需要各个专业的人员对施工图纸进行互审,比如让水专业的人员对电专业的施工图纸进行审核,或者让外部设计院对施工图纸审核,以审核图纸是否符合规范。基于在线审核系统对图纸审核时,由于图纸审核的各参与方所使用的终端不同,不同终端上可安装的软件或图形引擎也不相同,甚至软件或图形引擎的版本也不相同,然而不同的软件只能读取各自的文件格式,文件格式不统一会对在线协同审核产生障碍,因此,需要将原格式的图纸文件转换为各个软件或者图形引擎对应的格式。例如,施工图纸的原格式为dwg格式,在线协同审核参与方的终端上所安装的软件有autodesk revit、sketchup或3d studio max,那么为了达到在线协同审核的目的,即每个审核人员的修改能够被其他审核人员看到,需要将dwg格式的施工图纸分别转换为rvt格式、skp格式以及3ds格式的施工图纸,并将转换后的施工图纸分别发送到不同审核人员的终端上,使用各自对应的软件打开,并对施工图纸进行审核和修改。
15.由于在线审核系统中的施工图纸都是电子形式的图纸,因此,当在线审核系统将原格式的施工图纸分别转换为不同的格式时,将会导致施工图纸的格式转换时间增加,并且每个审核参与方对转换服务的操作体验不统一,也就是说,现有技术中针对不同格式的施工图纸进行转换时,无法通过一次转换实现图纸格式的统一。为了避免在线审核系统的格式转换服务无法实现格式统一的问题,在相关技术中,会通过线下方式对图纸进行审核,即将施工图纸打印出来分发给每个审核人员,每个审核人员分别拿着相同的图纸来看,这种线下审核方式需要进行面对面的审核,或者把图纸分发下去各自进行审核,但是线下审核存在审核效率低,沟通成本高,无法达到在线审核系统的实时审核的效果。
16.需要说明的是,本公开以下实施例是以施工图纸的在线协同审核场景为例进行描述的,但是,本公开实施例提供的图模文件格式转换方法不限于在线协同审核的场景,其他基于图纸所开展的使用场景中同样适用,例如,对图纸进行效果类点评,图纸的数据可视化展示等。本公开实施例中的图模文件也不限于施工图纸,任何可以进行格式转换的图纸文件或者模型文件均适用于本方案。
17.本公开实施例的执行主体可以是审核人员所使用的安装了图形软件或引擎的终端,例如,终端可以是诸如手机、平板、pc、智能手表等具有连网和展示功能的设备,本公开实施例中的软件或者图形引擎可以通过安装在终端上的第三方应用来实现,以上对应用场景和执行主体的描述不构成对本方案的限定。
18.图2是本公开实施例提供的一种将图模文件的格式转换为统一格式的方法的流程
示意图。图2的将图模文件的格式转换为统一格式的方法可以由服务器或者终端执行,其中服务器可以是在线协同审核系统对应的后台服务器。如图2所示,该图模文件的格式转换方法具体可以包括:s201,获取二维图纸文件和三维模型文件,二维图纸文件和三维模型文件对应各自的初始文件格式;s202,提取二维图纸文件中的几何对象和属性对象的第一信息,并根据第一信息生成统一文件格式的二维图纸文件;s203,提取三维模型文件中的几何对象和属性对象的第二信息,并根据第二信息生成统一文件格式的三维模型文件;s204,通过多个客户端中的至少一种图形引擎对统一文件格式的二维图纸文件或统一文件格式的三维模型文件进行加载和渲染,其中统一文件格式表示适用于多个图形引擎的通用格式。
19.具体地,在建筑工程的设计和施工领域,图模文件可以是一些图纸类文件,比如设计图纸、施工图纸、验收图纸等。图模文件的初始格式即图纸是采用哪种软件或者图形引擎制作而成的,比如使用autocad软件所绘制的施工图,导出的施工图纸的初始格式就是dwg格式。在实际应用中,除了dwg格式的施工图纸外,还可以包括rvt、skp、3ds等格式的图纸文件。其中,dwg格式的图纸文件对应的就是二维图纸文件,rvt、skp、3ds等格式的图纸文件对应的就是三维模型文件。
20.不同的图模文件可以来自不同的使用场景或者不同的数据源,当然不同格式的图模文件所包含的图纸内容可以是相同的,例如,在实际应用中,某一施工图纸既可以是a文件格式的,也可以是b文件格式的,但是施工图纸的内容可以是完全相同的。
21.进一步地,调用函数可以认为是被调用对象的图形软件所提供的api接口,可以将不同软件的api接口预先配置在审核系统的服务器中,具体地,可以获取不同软件提供的api接口安装包,通过安装包将api接口配置在服务器中的格式转换服务对应的计算程序中。需要说明的是,本公开实施例不对调用函数(即api接口)的具体内容进行限定,不同图形软件提供的调用函数并不相同。在实际应用中,api接口是由不同图形软件的服务方提供的,因此,调用函数的具体内容不构成对本技术方案的限定。
22.进一步地,图模中的几何对象和属性对象也可以称为目标对象,因此以下使用目标对象来指代几何对象和属性对象,目标对象类型是指从图模文件中提取出的目标对象所对应的类型,在实际应用中,目标对象类型包括但不限于以下类型:点、直线、圆弧、椭圆、抛物线、二次曲线、多段线、nurbs曲线、平面、柱面、球面、圆环面、nurbs曲面等、层、视图、颜色、材质、样式、文字。例如,从某一图模文件中提取出的目标对象是直线、那么该目标对象对应的类型就是直线类型。
23.需要说明的是,根据初始文件格式(以下简称初始格式)的图模文件转换为统一文件格式(以下简称统一格式)的图模文件,其中,统一格式是基于本公开实施例的转换方案所生成的特有的统一格式,该统一格式的图纸文件可以被不同的软件或者图形引擎打开,换言之,统一格式可以认为是一种适用于不同软件或图形引擎的通用的中间格式,在实际应用中,该统一格式可以被设定为以bimex为后缀的文件格式。
24.根据本公开实施例提供的技术方案,通过对不同格式的图模文件中的目标对象进
行解析,实现对目标对象类型的划分,根据分类后的目标对象以及预先配置的统一类型库,确定不同目标对象类型所对应的构造方式,根据构造方式中预设的转化规则,将原始图模文件中的目标对象转化为本发明格式对应的目标对象,即使换后的目标对象具有与本发明格式中此类对象相同的属性和表现方式,从而使基于转换后的目标对象所生成的图模文件的格式变为本发明所规定的格式。本方案能够通过一次转换服务就可使图模文件适用于不同的软件或图形引擎,降低了对图模文件进行格式转换的时间,提升了图模格式转换的体验感,降低了因不同格式转换及不同图形引擎的接入时的开发工作量和转换成本。
25.在一些实施例中,提取二维图纸文件中的几何对象和属性对象的第一信息,包括:获取初始文件格式的二维图纸文件所对应的第一调用函数,利用第一调用函数提取二维图纸文件中的第一信息;其中,第一调用函数为根据初始文件格式所配置的api接口的函数,第一信息为二维图纸文件中的第一几何对象和第一属性对象所对应的信息具体地,获取不同使用场景中所产生的至少一种初始格式的图模文件(即二维图纸文件和三维模型文件),每一个图模文件对应一种初始格式;其中,初始格式包括以下文件格式中的多种:dwg文件格式、rvt文件格式、skp文件格式和3ds文件格式。
26.进一步地,在本公开实施例中图模文件也可以认为是图纸文件,图纸文件来源于不同的使用场景中,例如:在建筑方案设计阶段所产生的图纸可以是初步设计图纸,在施工阶段所产生的图纸可以是施工图纸,在运维阶段所产生的图纸可以是运维图纸。可以理解的是,施工图纸是由具体的图形软件或者图形引擎制作而成的,因此,每个施工图纸可以对应不同的文件格式,例如,采用autocad软件制作图纸的格式是dwg格式的,autodesk revit软件所制作图纸的格式是rvt格式的。上述文件格式不构成对图模文件的初始格式的限定,基于任何能够制作图纸的软件所导出的图纸文件对应的文件格式都可以认为是图模文件的初始格式。
27.根据本公开实施例提供的技术方案,由于本公开实施例是通过将不同数据格式(即初始的图模文件格式)转化为统一的数据格式,以达到使不同终端上的图形软件都能读取的目的,因此,本公开实施例先需要获取不同使用场景(这里表示不同的文件格式)的图纸文件,以便进一步对图纸文件进行解析。下面结合具体实施例对图纸文件的解析过程进行详细说明。
28.在一些实施例中提取三维模型文件中的几何对象和属性对象的第二信息,包括:获取初始文件格式的三维模型文件所对应的第二调用函数,利用第二调用函数提取三维模型文件中的第二信息;其中,第二调用函数为根据初始文件格式所配置的api接口的函数,第二信息为三维模型文件中的第二几何对象和第二属性对象所对应的信息。
29.进一步地,在利用调用函数从初始格式的图模文件中提取目标对象的信息时,首先获取初始格式的图模文件所对应的调用函数,利用调用函数提取初始格式的图模文件中的目标对象的信息,调用函数为根据图模文件的初始格式所配置的api接口的函数;其中,目标对象包括几何对象和属性对象,几何对象包括以下几何图形中的一种或多种:点、直线、圆弧、椭圆、抛物线、二次曲线、多段线、nurbs曲线、nurbs曲面、平面、柱面、球面和圆环面;属性对象包括以下几何图形中的一种或多种:层、视图、颜色、材质、样式和文字。
30.需要说明的是,目标对象的信息是指图模文件中的几何对象和属性对象所对应的信息,即当图模文件为二维图纸文件时,目标对象的信息对应上述第一信息,即当图模文件
为三维模型文件时,目标对象的信息对应上述第二信息,因此,以下将使用目标对象的信息指代第一信息或者第二信息。
31.具体地,调用函数可以认为是图形软件或图形引擎对应的api接口,不同的图形软件或图形引擎的api接口都不相同,api接口可以通过相应图形软件或图形引擎的服务方获取,比如从图形软件或图形引擎的服务器中获取api接口。api(application programming interface)是指应用程序编程接口,可以认为是一些预先定义的函数,api提供了应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而且无需访问源码,或者理解内部工作机制细节。
32.进一步地,在本公开实施例中,可以通过图形软件的api接口从对应软件格式的图纸文件中解析出想要的数据(即提取目标对象的信息),例如以dwg格式的文件为例,利用autocad软件提供的api接口调用获取到的dwg格式的图纸文件,通过对图纸文件中的每一行明文信息从上到下依次进行解析,每当解析到一个实体对象(即目标对象)时,将该实体对象对应的信息(即目标对象的信息)提取出来,实体对象可以是一条直线、一个矩形、一个曲线等,实体对象中可以包括其他的对象,例如在一个矩形中可以包含多条线段,因此,某些对象的信息可能包含在上一对象的信息之中。
33.根据本公开实施例提供的技术方案,在获取不同数据格式的图纸文件之后,利用api接口调用相应的图纸文件,对图纸文件中的目标对象进行解析,提取目标对象的信息。本公开实施例通过api接口调用图纸文件的方式,可以更高效率地实现对目标对象信息的提取,不仅可以确定图纸文件中包含哪些目标对象,并且可以准确地提取出目标对象的信息,基于目标对象的信息可以进一步实现对目标对象的分类。下面结合具体实施例对目标对象的分类过程进行详细说明。
34.在一些实施例中,该方法还包括:根据第一信息中的类型标识分别对第一几何对象和第一属性对象进行分类,以将包含同一类型标识的第一几何对象或第一属性对象划分为同一类,并根据分类结果确定第一几何对象和第一属性对象所对应的类型。
35.在一些实施例中,该方法还包括:根据第二信息中的类型标识分别对第二几何对象和第二属性对象进行分类,以将包含同一类型标识的第二几何对象或第二属性对象划分为同一类,并根据分类结果确定第二几何对象和第二属性对象所对应的类型。
36.具体地,在提取出的目标对象的明文信息中,至少可以包含两方面的信息,即类型标识和参数,下面以实际应用场景为例对目标对象的信息进行详细说明。在dwg文件中,通过调用函数提取出以下信息:acdbpolyline, (90,4,70,1,43),(0.000000136528,777.6792892819,248.738154619728,243.068571317242)。在以上目标对象的信息中,acdbpolyline对应类型标识,后面的数据对应参数,根据类型标识可以确定该目标对象是一条多段线,即该目标对象的类型属于多段线,该目标对象的参数中包含点的索引以及点的坐标,目标对象信息中的参数也可以认为是目标对象所包含的属性。
37.进一步地,在本公开实施例中,根据目标对象的信息中的类型标识可以实现对目标对象的划分,即将目标对象划分到不同的类别中,例如将图纸文件中的所有直线划分到直线类型中,将所有的点划分到点类型中,将所有的圆弧划分到圆弧类型中,以此类推。通过api接口调用图纸文件中的目标对象并提取目标对象的信息,根据目标对象信息中的类型标识对其进行分类,
便于进一步根据目标对象的类型,选择与目标对象类型相匹配的构造方式对该目标对象进行重新构造。下面结合具体实施例对目标对象的重新构造的过程进行详细说明。
38.在一些实施例中,根据第一信息生成统一文件格式的二维图纸文件,包括:基于第一几何对象和第一属性对象所对应的类型,利用预先配置的统一类型库,确定与第一几何对象和第一属性对象的类型相对应的预定类型,并根据预定类型所对应的构造方式以及构造方式中的转化规则,将第一几何对象和第一属性对象分别转化为预定类型的对象,并根据预定类型的对象生成统一文件格式的二维图纸文件。
39.在一些实施例中,根据第二信息生成统一文件格式的三维模型文件,包括:基于第二几何对象和第二属性对象所对应的类型,利用预先配置的统一类型库,确定与第二几何对象和第二属性对象的类型相对应的预定类型,并根据预定类型所对应的构造方式以及构造方式中的转化规则,将第二几何对象和第二属性对象分别转化为预定类型的对象,并根据预定类型的对象生成统一文件格式的三维模型文件。
40.具体地,统一类型库中包含目标对象类型的类与预定类型的类之间的映射关系,目标对象类型的类用于表示与目标对象具有相同属性和构造方式的对象的集合,预定类型的类用于表示与预定类型的对象具有相同属性和构造方式的对象的集合,其中,预定类型的类中包含转化规则。
41.进一步地,本公开实施例中预先配置了一个统一类型库,在统一类型库中预先配置了不同目标对象类型之间类的映射关系,即为每一个目标对象所属的类型定义了一个类,例如直线的类,点的类,圆弧的类等。类是指具有相同属性和方法的一组对象的集合,它为属于该类的所有对象提供了统一的抽象描述。在实际应用中,在为目标对象定义其对应的类时,可以根据本发明预设格式对不同目标对象类型的要求,将同一类型的目标对象的属性以及表示方式封装成该目标对象的类,也就是说,与原来的目标对象相比,通过类可以将原来的目标对象的属性以及表示方式构造成本发明格式所定义的属性以及表示方式。因此,在公开实施例中可以将类看作是一种对象的构造方式,即根据该构造方式可以将某一个类的目标对象转换成另一个类的对象。
42.进一步地,在本公开实施例中,可以将不同类型的目标对象之间的转换规则写入到类(即构造方式)中,通过转换规则可以将不同目标对象的函数对应到统一格式所要求的函数上,转换规则可以认为是一种函数的转换关系。下面结合具体实施例,对利用转换规则实现目标对象的信息之间的函数转换进行说明,以点作为目标对象为例,在dwg文件中点对的函数是apoint();在rvt中点的函数是rpoint();在skp文件中点的函数是kpoint();利用转换规则将上述这些不同函数数据对应到lpoint();通过上述操作便可以实现将不同格式文件中的点转换为本发明统一格式文件中的点。其中,上述括弧里的内容可以是点的参数或者属性信息。
43.需要说明的是,在实际应用中,图模文件中的几何对象和属性对象分别对应不同的类,即分别为几何对象和属性对象定义各自的类,其中,几何对象的类定义了几何对象的属性以及几何对象的构造方式,属性对象的类定义了属性对象的属性以及属性对象的构造方式,构造方式可以通过构造函数来实现,例如,以属性对象中的颜色为例,通过本方案定义的类,可以将初始格式文件中线的颜色构造成符合本发明统一格式要求的线的颜色,即通过颜色的构造函数对原始的线的颜色进行操作。
44.根据本公开实施例提供的技术方案,通过统一类型库将初始格式文件中的目标对象的类映射到本发明统一格式中的对象的类,由于不同格式文件中的对象的表示方式不同,因此,通过转换规则将不同格式文件中的对象的函数对应到本发明格式中的对象的函数,通过转换实现不同格式文件的对象的表示方式的统一,从而达到了数据结构的统一。
45.在一些实施例中,转化规则用于将几何对象和属性对象的类型所对应的函数表达式转化为预定类型所对应的函数表达式,以使几何对象和属性对象的函数数据转化为预定类型所对应对象的函数数据。
46.具体地,转化规则可以认为是写到类中的一个转化函数,通过该转换函数可以将初始格式的目标对象的函数表示转化为统一格式对象的函数表示,例如,假设初始格式的dwg文件中,点函数用x、y、z三维坐标来表示,而统一格式的文件中点函数使用x'、y'、z'来表示,那么通过将初始格式的点中的x坐标对应到统一格式的x'中,将初始格式的点中的y坐标对应到统一格式的y'中,将初始格式的点中的z坐标对应到统一格式的z'中,就实现了函数的转换,或者说实现了对函数数据(即三维坐标)的转换。
47.进一步地,下面结合具体实施例对函数的转换方式进行详细说明,例如在具体应用场景中,通过图形软件a制作的施工图纸中直线的表达函数为,其中表示起点坐标,表示坐标向量,而统一格式的图纸中直线的表达函数为;在将图形软件a对应格式的直线对应到统一格式的直线上时,需要将对应成点a,将向量转化为点,再将点对应成点b,通过对函数数据进行对应实现函数的转化。
48.根据本公开实施例提供的技术方案,通过将初始格式中目标对象的表达函数转化为统一格式中对象的表达函数,实现了函数数据的转化,即从原来的对象转化成现在的对象,使得转化后的对象的数据格式能够满足统一格式的要求,从而使最终生成的图模文件能够达到统一格式的要求,即将图模文件的格式变成统一格式。
49.在一些实施例中,通过多个客户端中的至少一种图形引擎对统一文件格式的二维图纸文件或统一文件格式的三维模型文件进行加载和渲染,包括:将预定类型的对象执行离散化处理,并基于离散化处理后的对象生成待渲染的二维图纸文件或三维模型文件;利用预先安装在多个不同客户端上的图形引擎对待渲染的二维图纸文件或三维模型文件进行渲染,并将渲染后的二维图纸文件或三维模型文件在客户端中进行展示,以便执行在线协同审核操作。
50.具体地,由于离散后的数据是各种应用的基本结构,因此为了使图模文件能够被应用渲染,达到图模在线审核、效果展示以及数据呈现的目的,需要将统一格式的图模文件中的对象数据进行离散化,并将离散化后的对象所生成的图模文件作为渲染的对象,离散化操作还可以降低数据量。在基于与预定类型相对应的对象生成统一格式的图模文件之前,对与预定类型相对应的对象执行离散化处理,并根据离散化处理后的对象生成待渲染的图模文件;利用webgl技术对待渲染的图模文件进行渲染,并将渲染后的图模文件发送到不同的终端上进行展示,以便对渲染后的图模文件进行在线协同审核。
51.具体地,数据离散化是指将连续的数据进行分组,使其变为一段离散化的区间。例如以圆形为例,在对图模文件中的圆形进行离散化处理时,可以通过控制边数进行离散得
到一个多边形,由于离散处理是一个通用的方法,因此本公开实施例不对离散化处理的具体实现过程进行限定,任何能够实现数据离散的方式都可以应用于本方案。
52.下面结合附图对公开实施例中对初始格式的图模文件进行格式转换以及对转换后的图模文件进行渲染的过程进行说明。图3是本公开实施例在实际应用场景下的图模文件的格式转换过程的示意图。如图3所示,该图模文件的格式转换过程主要包括以下内容:在获取多个不同初始格式的图模文件之后,分别对图模文件进行解析,提取图模文件中的几何对象和属性对象,并根据目标对象的信息对其进行分类,根据统一类型库将目标对象的类型映射为统一的类型,利用转化函数对目标对象的函数进行转化,并将函数转化之后得到的对象放在一个图模文件中生成统一格式的图模文件,此时,新生成的图模文件中的数据属于统一格式后的三维系统数据,最后利用webgl技术对统一格式的图模文件进行渲染,或者采用ue4引擎、autocad软件等读取并呈现图模文件。
53.在本公开实施例中,除了可以将二维图纸文件和三维模型文件进行解析生成统一格式的文件之外,对于初始文件格式为普通格式的文件而言,也可以单独进行解析生成与之对应的通用格式的文件,这种通用格式的文件也可以被多端引擎进行调用和渲染。并且,可以将统一格式的图模文件和通用格式文件存储在同一系统数据库中,在多终端引擎中进行调用时,既可以调用统一格式的图模文件还可以调用通用格式文件。
54.在这里,普通格式的文件包括office、pdf、jpg等格式的文件,任何现有的或者将来开发的将office、pdf、jpg等普通格式转化为通用格式的技术,可以与本公开的实施例结合使用。
55.基于以上实施例,通过解析初始格式的图模文件,提取图模文件中的目标对象,并根据目标对象的信息实现对象的分类,再基于统一类型库中不同类型对象之间的类的映射关系,将初始格式文件中的对象转化为统一格式文件中的对象,从而实现将目标对象的类型映射为统一的类型,实现数据结构的统一,基于以上操作得到的对象所生成的图模文件的格式将会变成统一格式,该统一格式可以被不同的图形软件或者图形引擎识别和读取,达到了经过一次转换服务使不同软件或者图形引擎读取的目的,从而无需针对不同的图形软件分别对其进行转换,提高了图模文件转换的效率,使转换后的图模文件的格式能够适用于不同终端上的图形软件。
56.下面结合实际场景下的附图对格式转换及渲染后的图模文件进行说明。图4是本公开实施例在实际应用场景下经统一格式转换以及渲染后的图模文件的示意图。如图4所示,该图模文件中主要包括以下内容:图4所呈现的图模文件可以认为是建筑的平面图,包括墙体、幕墙等图形,还可以包括图形的尺寸、颜色(未显示)等。在实际应用中,图模文件不限于施工图纸,从建筑施工的投标阶段到竣工或运维阶段中涉及的图纸都适用于本方案,例如:设计图纸、施工图纸、深化设计图纸、销售物料图纸、体验区图纸、竣工图纸、运维图纸等。在图模文件中可以包含建筑、结构、机电、景观、精装、小市政、幕墙、泛光等显示内容。
57.需要说明的是,经过本方案统一格式转换后的图模文件,相比转换之前的图模文件,数据更加的轻量化,统一格式的图模文件能够被不同的图形软件或图形引擎同时使用,例如autodesk revit、sketchup、3d studio max、ue4、unity3d等软件或图形引擎,经统一格式转换及渲染后的图模文件可以应用在图模审核、效果展示、数据呈现等多种场景。
58.下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。
59.图5是本公开实施例提供的一种将多种图模文件格式转换为统一格式的装置的结构示意图。如图5所示,该图模文件的格式转换装置包括:获取模块501,被配置为获取二维图纸文件和三维模型文件,二维图纸文件和三维模型文件对应各自的初始文件格式;第一转化模块502,被配置为提取二维图纸文件中的几何对象和属性对象的第一信息,并根据第一信息生成统一文件格式的二维图纸文件;第二转化模块503,被配置为提取三维模型文件中的几何对象和属性对象的第二信息,并根据第二信息生成统一文件格式的三维模型文件;加载渲染模块504,被配置为通过多个客户端中的至少一种图形引擎对统一文件格式的二维图纸文件或统一文件格式的三维模型文件进行加载和渲染,其中统一文件格式表示适用于多个图形引擎的通用格式。
60.在一些实施例中,图5的第一转化模块502获取初始文件格式的二维图纸文件所对应的第一调用函数,利用第一调用函数提取二维图纸文件中的第一信息;其中,第一调用函数为根据初始文件格式所配置的api接口的函数,第一信息为二维图纸文件中的第一几何对象和第一属性对象所对应的信息。
61.在一些实施例中,图5的第一转化模块502根据第一信息中的类型标识分别对第一几何对象和第一属性对象进行分类,以将包含同一类型标识的第一几何对象或第一属性对象划分为同一类,并根据分类结果确定第一几何对象和第一属性对象所对应的类型。
62.在一些实施例中,图5的第一转化模块502基于第一几何对象和第一属性对象所对应的类型,利用预先配置的统一类型库,确定与第一几何对象和第一属性对象的类型相对应的预定类型,并根据预定类型所对应的构造方式以及构造方式中的转化规则,将第一几何对象和第一属性对象分别转化为预定类型的对象,并根据预定类型的对象生成统一文件格式的二维图纸文件。
63.在一些实施例中,图5的第二转化模块503获取初始文件格式的三维模型文件所对应的第二调用函数,利用第二调用函数提取三维模型文件中的第二信息;其中,第二调用函数为根据初始文件格式所配置的api接口的函数,第二信息为三维模型文件中的第二几何对象和第二属性对象所对应的信息。
64.在一些实施例中,图5的第二转化模块503根据第二信息中的类型标识分别对第二几何对象和第二属性对象进行分类,以将包含同一类型标识的第二几何对象或第二属性对象划分为同一类,并根据分类结果确定第二几何对象和第二属性对象所对应的类型。
65.在一些实施例中,图5的第二转化模块503基于第二几何对象和第二属性对象所对应的类型,利用预先配置的统一类型库,确定与第二几何对象和第二属性对象的类型相对应的预定类型,并根据预定类型所对应的构造方式以及构造方式中的转化规则,将第二几何对象和第二属性对象分别转化为预定类型的对象,并根据预定类型的对象生成统一文件格式的三维模型文件。
66.在一些实施例中,统一类型库中包含预设的几何对象和属性对象的类型所对应的类与预定类型的类之间的映射关系,几何对象和属性对象的类型所对应的类用于表示与几
何对象和属性对象具有相同属性和构造方式的对象的集合,预定类型的类用于表示与预定类型的对象具有相同属性和构造方式的对象的集合。
67.在一些实施例中,转化规则用于将几何对象和属性对象的类型所对应的函数表达式转化为预定类型所对应的函数表达式,以使几何对象和属性对象的函数数据转化为预定类型所对应对象的函数数据。
68.在一些实施例中,图5的加载渲染模块504将预定类型的对象执行离散化处理,并基于离散化处理后的对象生成待渲染的二维图纸文件或三维模型文件;利用预先安装在多个不同客户端上的图形引擎对待渲染的二维图纸文件或三维模型文件进行渲染,并将渲染后的二维图纸文件或三维模型文件在客户端中进行展示,以便执行在线协同审核操作。
69.在一些实施例中,几何对象包括以下几何图形中的一种或多种:点、直线、圆弧、椭圆、抛物线、二次曲线、多段线、nurbs曲线、nurbs曲面、平面、柱面、球面和圆环面;属性对象包括以下几何图形中的一种或多种:层、视图、颜色、材质、样式和文字。
70.在一些实施例中,初始文件格式包括以下文件格式中的多种:dwg文件格式、rvt文件格式、skp文件格式和3ds文件格式。
71.应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。
72.图6是本公开实施例提供的电子设备6的结构示意图。如图6所示,该实施例的电子设备6包括:处理器601、存储器602以及存储在该存储器602中并且可以在处理器601上运行的计算机程序603。处理器601执行计算机程序603时实现上述各个方法实施例中的步骤。或者,处理器601执行计算机程序603时实现上述各装置实施例中各模块/单元的功能。
73.示例性地,计算机程序603可以被分割成一个或多个模块/单元,一个或多个模块/单元被存储在存储器602中,并由处理器601执行,以完成本公开。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序603在电子设备6中的执行过程。
74.电子设备6可以是桌上型计算机、笔记本、掌上电脑及云端服务器等电子设备。电子设备6可以包括但不仅限于处理器601和存储器602。本领域技术人员可以理解,图6仅仅是电子设备6的示例,并不构成对电子设备6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如,电子设备还可以包括输入输出设备、网络接入设备、总线等。
75.处理器601可以是中央处理单元(central processing unit,cpu),也可以是其它通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field

programmable gate array,fpga)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
76.存储器602可以是电子设备6的内部存储单元,例如,电子设备6的硬盘或内存。存储器602也可以是电子设备6的外部存储设备,例如,电子设备6上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)
等。进一步地,存储器602还可以既包括电子设备6的内部存储单元也包括外部存储设备。存储器602用于存储计算机程序以及电子设备所需的其它程序和数据。存储器602还可以用于暂时地存储已经输出或者将要输出的数据。
77.所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
78.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
79.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。
80.在本公开所提供的实施例中,应该理解到,所揭露的装置/计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/计算机设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
81.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
82.另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
83.集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本公开实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可以存储在计算机可读存储介质中,该计算机程序在被处理器执行时,可以实现上述各个方法实施例的步骤。计算机程序可以包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、电载波信
号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如,在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
84.以上实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的精神和范围,均应包含在本公开的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜