一种BIM模型构件的展示方法、装置、电子设备及存储介质与流程

文档序号:29926893发布日期:2022-05-07 11:27阅读:95来源:国知局
一种BIM模型构件的展示方法、装置、电子设备及存储介质与流程
一种bim模型构件的展示方法、装置、电子设备及存储介质
技术领域
1.本技术涉及建筑信息技术领域,尤其涉及一种bim模型构件的展示方法、装置、电子设备及存储介质。


背景技术:

2.建筑信息模型(bim)是创建和管理建筑资产信息的整体流程。bim基于由云平台支持的智能模型,将结构化、多领域数据整合在一起,以在其整个生命周期(从规划和设计到施工和运营)内生成资产的数字表示。
3.通常情况下,bim模型采用2d的表达形式,在需要绘制bim模型的3d表达时,从2d表达转换到3d表达。或者,bim模型采用3d的表达形式,在需要绘制bim模型的2d表达时,从3d转换到2d表达。两种表达形式之间的切换,需要修改bim模型中每个顶点的表达方式,转换过程繁琐。且2d和3d的表达之间存在耦合关系,导致bim模型在绘制过程中的修改也比较困难。


技术实现要素:

4.为了解决不同表达方式之间转换过程繁琐的技术问题,本技术提供了一种bim模型构件的展示方法、装置、电子设备及存储介质。
5.第一方面,本技术提供了一种bim模型构件的展示方法,所述方法包括:
6.获取bim模型中目标构件的表达数据,所述表达数据包括二维表达数据和三维表达数据;
7.获取目标展示方式;
8.根据所述目标展示方式,确定根据所述二维表达数据和/或所述三维表达数据对所述目标构件进行渲染展示;
9.进一步,获取bim模型中目标构件的表达数据,包括:
10.获取所述目标构件的标识信息;
11.根据所述标识信息和预设的映射关系,获取所述标识信息对应的所述表达数据;所述映射关系为所述标识信息与所述表达数据的映射关系;
12.进一步,所述目标展示方式为第一展示方式;根据所述二维表达数据和/或所述三维表达数据对所述目标构件进行渲染展示,包括:
13.在主线程,根据所述二维表达数据对所述目标构件进行二维渲染展示;
14.在后台线程,根据所述三维表达数据对所述目标构件进行三维渲染展示;
15.进一步,所述目标展示方式为第二展示方式;根据所述二维表达数据和/或所述三维表达数据对所述目标构件进行渲染展示,包括:
16.在主线程,根据所述三维表达数据对所述目标构件进行三维渲染展示;
17.在后台线程,根据所述二维表达数据对所述目标构件进行二维渲染展示;
18.进一步,所述方法包括:
19.将主线程渲染的所述目标构件在第一区域渲染展示,在后台线程渲染的所述目标构件在第二区域渲染展示;
20.进一步,所述方法还包括:
21.获取所述目标构件的修改参数;
22.根据所述修改参数同时修改所述二维表达数据和所述三维表达数据;
23.进一步,所述方法还包括:
24.获取所述bim模型的原始数据;所述原始数据包括族数据和所述族数据内的嵌套族数据;
25.将所述族数据和所述嵌套族数据分离,并分别提取分离后的所述族数据和所述嵌套族数据中包含的所述目标构件的表达数据。
26.第二方面,本技术提供了一种bim模型构件的展示装置,所述装置包括:
27.第一获取模块,用于获取bim模型中目标构件的表达数据,所述表达数据包括二维表达数据和三维表达数据;
28.第二获取模块,用于获取目标展示方式;
29.渲染模块,用于根据所述目标展示方式,确定根据所述二维表达数据和/或所述三维表达数据对所述目标构件进行渲染展示。
30.第三方面,本技术提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
31.存储器,用于存放计算机程序;
32.处理器,用于执行存储器上所存放的程序时,实现第一方面任一项实施例所述的bim模型构件的展示方法的步骤。
33.第四方面,本技术提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面任一项实施例所述的bim模型构件的展示方法的步骤。
34.本技术实施例提供的上述技术方案与现有技术相比具有如下优点:
35.本技术实施例提供的该方法,包括:获取bim模型中目标构件的表达数据,所述表达数据包括二维表达数据和三维表达数据;获取目标展示方式;根据所述目标展示方式,确定根据所述二维表达数据和/或所述三维表达数据对所述目标构件进行渲染展示。切换不同表达方式时不需要进行表达数据的转换,可以根据目标展示方式,选择不同的表达数据进行渲染展示,解决了不同表达方式之间转换过程繁琐的问题,降低了渲染展示难度,提高了数据处理速度。
附图说明
36.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
37.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
38.图1为本技术实施例提供的一种bim模型构件的展示方法的系统架构图;
39.图2为本技术实施例提供的一种bim模型构件的展示方法的流程示意图;
40.图3为现有技术中门的不同表达方式的示意图;
41.图4为本技术实施例提供的一种bim模型构件的展示方法中参数修改的流程示意图;
42.图5为本技术实施例提供的一种bim模型构件的展示装置的结构示意图;
43.图6为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
44.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
45.本技术第一实施例提供了一种bim模型构件的展示方法,该方法可以应用于如图1所示的系统架构,该系统架构中至少包括终端100和服务器101,该终端100和服务器101建立通信连接,该bim模型构件的展示方法可应用于终端100侧,也可应用于服务器101侧。
46.基于该系统架构,对bim模型构件的展示方法实施例进行说明。
47.一种bim模型构件的展示方法,如图2,方法包括:
48.步骤201,获取bim模型中目标构件的表达数据,表达数据包括二维表达数据和三维表达数据。
49.步骤202,获取目标展示方式。
50.步骤203,根据目标展示方式,确定根据二维表达数据和/或三维表达数据对目标构件进行渲染展示。
51.本实施例中,获取bim模型中目标构件的表达数据,表达数据包括二维表达数据和三维表达数据,目标构件的表达数据分离,根据目标展示方式包括的表达方式,进行二维表达数据和/或三维表达数据的渲染展示,在切换不同表达方式时不需要进行二维表达数据和三维表达数据之间的转换,可以根据目标展示方式选择不同的表达数据进行渲染,解决了目标构件不同表达方式之间转换过程繁琐的问题,降低了渲染难度,提高了数据处理速度。
52.一个实施例中,获取bim模型中目标构件的表达数据,包括:获取目标构件的标识信息;根据标识信息和预设的映射关系,获取标识信息对应的表达数据;映射关系为标识信息与表达数据的映射关系。
53.表达数据包括二维表达数据和三维表达数据;映射关系包括标识信息与二维表达数据在二维表达方式下的映射关系,以及,标识信息与三维表达数据在三维表达方式下的映射关系;二维表达数据包括目标构件的二维抽象图形的描述数据;三维表达数据包括目标构件的三维图形的描述数据。获取目标构件的标识信息,可根据标识信息获取标识信息对应的目标构件的二维抽象图形的描述数据和三维图形的描述数据,根据目标展示方式,确定根据二维抽象图形的描述数据和/或三维图形的描述数据进行渲染展示。
54.其中,目标构件可以是族构件,也可以是族构件中的嵌套族构件,也可以是族构件或者嵌套族构件中的任一组成部分。二维表达方式即2d表达,三维表达形式即3d表达,二维
数据用符号线表示,符号线只在二维视图中显示,三维数据是实体几何图形,在三维视图中默认显示,还可以设置图形在二维视图中是否显示,二维视图包括二维平面视图和二维立面视图。
55.二维表达作为构件的抽象符号,能够准确表示构件,符合设计师的出图习惯。二维表达在平面和立面上都可以显示。
56.bim模型是三维信息模型,模型中所有的构件是对现实物体的真实映射,当设计成果需要出具三维模型,将bim模型呈现即可。当设计成果需要出具二维图纸,那么需要将三维构件在二维上抽象为特定的符号来表达,这样才符合传统设计中的出图规范和习惯。
57.以目标构件为建筑中的门举例说明,如图3,分别为门的三维表达、二维平面表达和二维立面表达。可以看出,门在二维中的表达,不管是二维平面表达还是二维立面表达均不是门的真实映射,但是这些二维抽象符号是行业中约定俗称的,不影响其他人读图。这样的抽象表达在建筑、结构、水暖电专业中还有很多。在映射关系中,分别存储二维表达数据和三维表达数据,根据目标构件的标识信息调取对应的二维表达数据和三维表达数据,根据目标展示方式,确定在需要展示二维表达数据时,对二维表达数据进行渲染展示,在需要展示三维表达数据时对三维表达数据进行渲染展示,实现二维表达数据和三维表达数据的解耦,解决了在二维表达和三维表达之间转换时,需要修改每个顶点的表达方式的问题,大大简化了转换的难度,提高了表达方式切换时的效率。
58.为提高二维表达和三维表达转换时的效率,可同时对二维表达数据和三维表达数据进行渲染,将需要展示的表达数据进行渲染展示,暂时不需要展示的表达数据可在后台进行渲染备用。
59.一个实施例中,目标展示方式为第一展示方式;根据二维表达数据和/或三维表达数据对目标构件进行渲染展示,包括:在主线程,根据二维表达数据对目标构件进行二维渲染展示;在后台线程,根据三维表达数据对目标构件进行三维渲染展示。其中,第一展示方式可以包括展示二维表达数据。
60.在需要展示二维表达数据时,主线程进行二维表达数据的渲染展示,同时在后台线程进行三维表达数据的同步渲染,可以是主界面通过主线程进行2d平面实时绘制,3d模型通过离屏渲染的方式在后台通过后台进程进行渲染,避免对主线程造成卡顿,提高操作流畅性。并且,在映射关系中二维数据和三维数据单独存储,不存在耦合关系,在渲染时可各自独立渲染,比如,在二维表达时,不需要考虑三维表达的数据,减少了面片数和顶点数,渲染效率更高,将需要的表达方式在主线程进行渲染,可充分平衡好计算机的渲染效率。需要切换为展示三维表达数据时可直接将渲染的三维表达数据进行展示,提高切换表达方式时的处理速度,提高用户体验感。
61.一个实施例中,目标展示方式为第二展示方式;根据二维表达数据和/或三维表达数据对目标构件进行渲染展示,包括:在主线程,根据三维表达数据对目标构件进行三维渲染展示;在后台线程,根据二维表达数据对目标构件进行二维渲染展示。其中,第二展示方式可以包括展示三维表达数据。
62.在需要展示三维表达数据时,主线程进行三维表达数据的渲染展示,同时在后台线程进行二维表达数据的同步渲染,可以是主界面通过主线程进行3d实时绘制,2d模型通过离屏渲染的方式在后台通过后台进程进行渲染,避免对主线程造成卡顿,提高操作流畅
性。在映射关系中二维数据和三维数据单独存储,二维和三维各自表达,不存在耦合关系,在渲染时可各自独立渲染,并将需要的表达方式在主线程进行渲染,可充分平衡好计算机的渲染效率。需要切换为展示二维表达数据时可直接将渲染的二维表达数据进行展示,提高切换表达方式时的处理速度,提高用户体验感。
63.一个实施例中,方法包括:将主线程渲染的目标构件在第一区域渲染展示,在后台线程渲染的目标构件在第二区域渲染展示。由于构件包括二维表达数据和三维表达数据,因此,开发人员既可以在二维状态下对构件进行编辑,也可以在三维状态下对构件进行编辑。当开发人员在二维编辑模式下对构件进行编辑时,在编辑区展示构件的二维模型,在预览区展示对应的三维模型;当开发人员切换到三维编辑模式时,在编辑区展示构件的三维模型,在预览区展示对应的二维模型。
64.本实施例中,在渲染展示界面可同时展示二维表达数据和三维表达数据,第一区域和第二区域为渲染展示界面中的不同区域,第一区域可以为编辑区,第二区域可以为预览区,可同时在编辑区和预览区分别对二维表达数据和三维表达数据进行渲染展示。在切换时,编辑区和预览区的渲染展示内容进行切换。一个实施例中,方法还包括:获取目标构件的修改参数;根据修改参数同时修改二维表达数据和三维表达数据。
65.本实施例中,若需要修改二维表达数据和三维表达数据,可以在前端对参数进行编辑,得到修改参数,根据修改参数修改后端的二维表达数据和三维表达数据。该方法不仅可应用于确定根据二维表达数据和/或三维表达数据对目标构件进行渲染展示之前,也可应用于确定根据二维表达数据和/或三维表达数据对目标构件进行渲染展示之后。具体的,如图4,包括:步骤401,前端编辑;步骤402,参数变化;步骤403,修改数据;步骤404,数据建模;步骤405,重新渲染。比如前端正在进行二维表达,前端的参数发生改变后,根据修改参数修改后端的二维表达数据以及该参数对应的三维表达数据,通过表达数据驱动数据建模,在前端重新进行二维渲染,其中,表达数据包括二维表达数据和三维表达数据。
66.一个实施例中,方法还包括:获取bim模型的原始数据,原始数据包括族数据和族数据内的嵌套族数据;将族数据和嵌套族数据分离,并分别提取分离后的族数据和嵌套族数据中包含的目标构件的表达数据。
67.该方法用于终端侧时,比如应用于浏览器端进行在线渲染,如果对bim模型的原始数据进行直接渲染,原始数据中构件之间有多重引用,冗余信息较多,比如,在一面墙上有一个门,在bim模型的原始数据中,门的数据中会存储有墙的信息,墙的数据中也会存储有门的信息,因此,原始数据一般数据量较大,数据传递时间成本会增加,同时,对传输速度也有很高的要求。本实施例中,通过对原始数据提前处理,将原始数据中,需要渲染的目标构件以及目标构件包括的渲染所需的信息提取出来,单独组成一个组件(component),增加component后,让数据使用者只关注想关注的数据,并且,component中的数据去除了多重引用的冗余信息,数据较为精简。component的扩展性强,后续需要添加进来的构件都能囊括。
68.原始数据没有component部分,数据使用者需要在所有数据中去找需要的数据,数据使用起来比较复杂。而本实施例的数据格式中含有component部分,数据使用者只需要去component中寻找数据进行渲染就行,使用起来比较直接。通过该方法,提前组织好在前端渲染中需要的数据,与bim模型的原始数据相比,数据量大大减少,由于精简了数据,缩短了数据的传输时间,能够提高前端数据交互的效率,进而可以提高渲染效率。
69.嵌套族数据是指嵌套在族数据中的族数据,比如,以车位举例,车位包括拉伸体、文字、车墩等,车位为族数据,其中的车墩为嵌套族数据。在本实施例中,将原始数据中的族数据和嵌套族数据分离,并分别提取分离后的族数据和嵌套族数据中包含的目标构件的表达数据。还以车位举例,将车位的原始数据中的拉伸体、文字、车墩等从车位中分离出来,存储到component中,当需要渲染车位时,根据需要渲染构件对应的标识信息,在component中对应查找响应的数据,如果是二维渲染,则在component中获取对应的二维表达数据,若是三维渲染,则在component中获取对应的三维表达数据。
70.族数据还可以按照族类型数据分类,将具有相同族类型的族数据存储到一起,具有相同族类型的族数据共用一套模板,用id对族数据进行区分,进一步的精简数据,降低数据的大小,方便前端的使用。
71.可以理解的是,由于bim模型是由若干构件组成的,本领域技术人员通过本发明提供的bim模型构件的展示方法可以得到对应的bim模型的展示方法。这样,当开发人员在查看或编辑bim模型时,可以随意在二维或三维模式下切换。
72.基于同一技术构思,本技术第二实施例提供了一种bim模型构件的展示装置,如图5,所述装置包括:
73.第一获取模块501,用于获取bim模型中目标构件的表达数据,所述表达数据包括二维表达数据和三维表达数据;
74.第二获取模块502,用于获取目标展示方式;
75.渲染模块503,用于根据所述目标展示方式,确定根据所述二维表达数据和/或所述三维表达数据对所述目标构件进行渲染展示。
76.本实施例中,获取bim模型中目标构件的表达数据,表达数据包括二维表达数据和三维表达数据,目标构件的表达数据分离,根据目标展示方式包括的表达方式,进行二维表达数据和/或三维表达数据的渲染展示,在切换不同表达方式时不需要进行二维表达数据和三维表达数据之间的转换,可以根据目标展示方式选择不同的表达数据进行渲染,解决了不同表达方式之间转换过程繁琐的问题,降低了渲染难度,提高了数据处理速度。
77.如图6所示,本技术第三实施例提供了一种电子设备,包括处理器111、通信接口112、存储器113和通信总线114,其中,处理器111,通信接口112,存储器113通过通信总线114完成相互间的通信,
78.存储器113,用于存放计算机程序;
79.在一个实施例中,处理器111,用于执行存储器113上所存放的程序时,实现前述任意一个方法实施例提供的bim模型构件的展示方法,包括:
80.获取bim模型中目标构件的表达数据,所述表达数据包括二维表达数据和三维表达数据;
81.获取目标展示方式;
82.根据所述目标展示方式,确定根据所述二维表达数据和/或所述三维表达数据对所述目标构件进行渲染展示。
83.上述终端提到的通信总线可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。
为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
84.通信接口用于上述终端与其他设备之间的通信。
85.存储器可以包括随机存取存储器(random access memory,简称ram),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
86.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
87.本技术第四实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述任意一个方法实施例提供的bim模型构件的展示方法的步骤,包括:
88.获取bim模型中目标构件的表达数据,所述表达数据包括二维表达数据和三维表达数据;
89.获取目标展示方式;
90.根据所述目标展示方式,确定根据所述二维表达数据和/或所述三维表达数据对所述目标构件进行渲染展示。
91.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
92.需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
93.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。在描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明
的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
94.以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1