CN115908715A - 建筑信息模型的加载方法及装置、设备、存储介质 - Google Patents
建筑信息模型的加载方法及装置、设备、存储介质 Download PDFInfo
- Publication number
- CN115908715A CN115908715A CN202211590215.4A CN202211590215A CN115908715A CN 115908715 A CN115908715 A CN 115908715A CN 202211590215 A CN202211590215 A CN 202211590215A CN 115908715 A CN115908715 A CN 115908715A
- Authority
- CN
- China
- Prior art keywords
- model
- data
- building information
- loading
- component
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明提供了建筑信息模型的加载方法及装置、设备、存储介质,加载方法包括对建筑信息模型中的第一模型数据进行格式转换处理,得到具有预设数据格式的第二模型数据;将通过第二模型数据表征的多个实体进行组合,得到实体集合;其中,实体包括至少一个组件,多个实体具有相同的组件类型,组件类型表示用于构成实体的组件的数据类型;为实体集合分配内存,以及将内存拆分为多个内存块;通过多个线程并行处理多个内存块中的数据,以对建筑信息模型进行加载。本发明能够有效缓解模型加载不流畅出现卡顿的现象,进而提高模型的加载效率。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种建筑信息模型的加载方法及装置、设备、存储介质。
背景技术
BIM(Bui lding I nformation Mode l ing)即建筑信息模型,是一种通过将建筑的物理形态和功能特性数字化表达,同时包含数字化的三维几何模型数据和建筑属性数据信息,且可实现对建筑环境全生命周期数字化管理的技术。
建筑信息模型的场景构件数量庞大,各类建筑信息模型的设计软件在制作和显示模型场景时通常默认加载所有模型构件及其属性信息,这种方式在加载过程会耗费大量的时间,导致模型加载不流畅,出现卡顿(画面卡住)的现象。
针对上述相关技术中由于默认加载所有模型构件及其属性信息,导致加载时间长,容易出现卡顿现象的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种建筑信息模型的加载方法及装置、设备、存储介质,用以克服相关技术中由于默认加载所有模型构件及其属性信息,导致加载时间长,容易出现卡顿现象的问题。
为了实现上述目的,本发明实施例的第一方面,提供一种建筑信息模型的加载方法,包括:
对建筑信息模型中的第一模型数据进行格式转换处理,得到具有预设数据格式的第二模型数据;
将通过所述第二模型数据表征的多个实体进行组合,得到实体集合;其中,所述实体包括至少一个组件,所述多个实体具有相同的组件类型,所述组件类型表示用于构成所述实体的组件的数据类型;
为所述实体集合分配内存,以及将所述内存拆分为多个内存块;
通过多个线程并行处理所述多个内存块中的数据,以对所述建筑信息模型进行加载。
本发明提供的建筑信息模型的加载方法,将通过第二模型数据表征的多个实体进行组合,将实体集合分配的内存拆分为多个内存块,以及通过多个线程并行处理多个内存块中的数据,能够有效缓解模型加载不流畅出现卡顿的现象,进而提高模型的加载效率。
可选地,在第一方面的一种可能实现方式中,所述对建筑信息模型中的第一模型数据进行格式转换处理,得到具有预设数据格式的第二模型数据,包括:
对几何模型数据进行格式转换处理,得到具有第一预设格式的第三模型数据;所述第一模型数据包括建筑信息模型的几何模型数据,所述预设数据格式包括所述第一预设格式,所述第二模型数据包括所述第三模型数据;所述几何模型数据包括:建筑模型数据、设施模型数据和组件模型数据。
可选地,在第一方面的一种可能实现方式中,所述对建筑信息模型中的第一模型数据进行格式转换处理,得到具有预设数据格式的第二模型数据,包括:
对非几何模型数据进行格式转换处理,得到具有第二预设格式的第四模型数据;所述第一模型数据包括建筑信息模型的非几何模型数据,所述预设数据格式包括所述第二预设格式,所述第二模型数据包括所述第四模型数据;所述非几何模型数据包括:几何模型数据的属性数据和其他相关数据。
本发明提供的建筑信息模型的加载方法,通过将第一模型数据进行格式转换处理,得到具有预设数据格式的第二模型数据,能够将模型数据转换为游戏引擎支持的格数格式,为建筑信息模型在游戏引擎中的应用提供技术支持。
可选地,在第一方面的一种可能实现方式中,所述通过多个线程并行处理所述多个内存块中的数据,包括:
通过多个用于解析的线程,对所述多个内存块中的数据进行解析;所述用于解析的线程与所述内存块对应;
通过多个用于渲染的线程,对多个解析数据构建相应的显示对象,以在显示界面上渲染出与所述第二模型数据对应的三维可视化图像;所述用于渲染的线程与所述解析数据对应,所述三维可视化图像包括多个显示对象。
本发明提供的建筑信息模型的加载方法,通过多个解析线程对多个内存块的数据进行并行解析,通过多个渲染线程对多个解析数据进行并行渲染,能够实现对数据的多线程并行运算,达到提高数据处理效率,提升系统性能的技术效果,以及实现对建筑信息模型数据的轻量化管理。
可选地,在第一方面的一种可能实现方式中,所述方法,还包括:
预先为目标模型设置第一模型和第二模型,所述第一模型的显示精度高于第二模型的显示精度;
检测所述目标模型与视点之间的距离,以根据所述距离调整所述目标模型的显示精细程度;
当所述距离大于预设阈值时,将所述第二模型作为目标模型,用于模型显示;
当所述距离小于预设阈值时,将所述第一模型作为目标模型,用于模型显示。
本发明提供的建筑信息模型的加载方法,通过检测目标模型与视点之间的距离,以根据距离调整目标模型的显示精细程度,能够避免不必要的数据加载,进而提升模型的加载效率,从而解决相关技术中由于默认加载所有模型构件及其属性信息,导致加载时间长,容易出现卡顿现象的问题。
可选地,在第一方面的一种可能实现方式中,所述方法还包括:
预先将所述建筑信息模型分割成多个指定区域;
确定所述视点的视野覆盖到的目标区域,所述目标区域为多个指定区域中的至少一个;
对所述目标区域内的所述建筑信息模型包含的构件进行渲染和显示。
本发明提供的建筑信息模型的加载方法,通过对目标区域内的建筑信息模型包含的构件进行渲染和显示,能够避免对建筑信息模型中的所有模型构件进行数据加载的情况发生,节省了数据加载的时间,进而提高模型的加载效率。
可选地,在第一方面的一种可能实现方式中,所述方法还包括:
获取所述建筑信息模型中的目标构件的基本信息,所述基本信息包括身份标识号和位置信息;
根据所述目标构件的位置信息,从数据库中按照层级关系逐级查询,得到多个对应所述位置信息的预选构件;
根据所述目标构件的身份标识号,从所述多个具有所述位置信息的预选构件中筛选得到目标构件。
本发明提供的建筑信息模型的加载方法,通过目标构件的位置信息,从数据库中按照层级关系逐级查询,得到多个对应位置信息的预选构件;根据目标构件的身份标识号,从多个具有位置信息的预选构件中筛选得到目标构件,能够优化构件检索的效率,以实现模型构件检索的快速化和准确化。
本发明实施例的第二方面,提供一种建筑信息模型的加载装置,包括:
格式转换模块,用于对建筑信息模型中的第一模型数据进行格式转换处理,得到具有预设数据格式的第二模型数据;
实体组合模块,用于将通过所述第二模型数据表征的多个实体进行组合,得到实体集合;其中,所述实体包括至少一个组件,所述多个实体具有相同的组件类型,所述组件类型表示用于构成所述实体的组件的数据类型;
内存拆分模块,用于为所述实体集合分配内存,以及将所述内存拆分为多个内存块;
数据加载模块,用于通过多个线程并行处理所述多个内存块中的数据,以对所述建筑信息模型进行加载。
本发明实施例的第三方面,提供一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述各个方法实施例中的步骤。
本发明实施例的第四方面,提供一种可读存储介质,所述可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现本发明第一方面及第一方面各种可能设计的所述方法的步骤。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1的建筑信息模型的加载方法的流程示意图。
图2为本发明实施例1的应用场景的流程图示意图。
图3为本发明实施例2的建筑信息模型的加载装置的原理框图。
图4为本发明实施例3中计算机设备的内部结构示意图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,还可以是两个元件内部的连通,可以是无线连接,也可以是有线连接。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
实施例1
本实施例提供一种建筑信息模型的加载方法,如图1所示,该加载方法包括但不限于步骤S100至步骤S300。
S100:对建筑信息模型中的第一模型数据进行格式转换处理,得到具有预设数据格式的第二模型数据。
具体地,建筑信息模型可以是B I M模型(Bu i l d i ng I nformat i on Model i ng,简称B I M),可以实现建筑信息的集成,从建筑的设计、施工、运行直至建筑全寿命周期的终结,各种信息始终整合于一个建筑信息模型中。第一模型数据可以包括建筑信息模型的几何模型数据和非几何模型数据,几何模型数据即建筑模型数据、设施模型数据和组件模型数据,可以理解为在显示设备上能直观看到的二维或三维的实体建筑、设施模型及其它图元要素;非几何模型数据即几何模型数据的属性数据和其他相关数据,例如模型或者构件的长宽高、面积和身份标识号等。
更具体地,对建筑信息模型中的第一模型数据进行格式转换处理,得到具有预设数据格式的第二模型数据的过程中,包括以下步骤:
S110:对几何模型数据进行格式转换处理,得到具有第一预设格式的第三模型数据;
S120:对非几何模型数据进行格式转换处理,得到具有第二预设格式的第四模型数据。
在步骤S110至S120中,可以将建筑信息模型中的几何模型信息(例如在显示设备上能直观看到的二维或三维的实体建筑、设施模型及其它图元要素)通过二次开发的方式导出为游戏引擎Un ity支持的FBX、OBJ或DXF等格式;以及将非几何属性信息(指几何信息带有的属性数据及相关的其它数据等,如模型的长高、面积、身份标识码等)通过二次开发的方式导出为JSON、XML或XLSX格式,从而将具有预设数据格式的几何信息与非几何信息融合在游戏引擎Unity 3D中,实现模型的初步轻量化加载和属性信息的调用。
本发明提供的建筑信息模型的加载方法,通过将第一模型数据进行格式转换处理,得到具有预设数据格式的第二模型数据,能够将模型数据转换为游戏引擎支持的格式,为建筑信息模型在游戏引擎中的应用提供技术支持。
S200:将通过第二模型数据表征的多个实体进行组合,得到实体集合;其中,实体包括至少一个组件,多个实体具有相同的组件类型,组件类型表示用于构成实体的组件的数据类型。
具体地,实体可以包括一个组件,可以是多个组件的组合,每个组件可以代表一组数据,即一个数据包。在对多个实体进行组合时,可以将具有相同的组件类型的实体进行组合,例如实体1中包含组件1,实体2中包含组件1和组件2,实体3中包含组件1、组件2和组件3,实体4包含组件1,实体5中包含组件1和组件2。实体1和实体4具有相同的组件类型,组件1,因此可以将实体1和实体4进行组合得到实体集合1;同理,实体2和实体5可以进行组合得到实体集合2,实体3自己作为一个实体集合3。将具有相同组件(Component)类型的实体(Ent ity)组合成一个原型(Archetype),每个Chunk默认大小为16kb,即形成的Chunk能够使得相同类型的组件在内存中都是顺序排列,极大程度增加缓存的命中率。
S300:为实体集合分配内存,以及将内存拆分为多个内存块。
具体地,每个实体集合所标记的内存会被分配成多个固定大小且连续的非托管内存块(Chunk),每个Chunk默认大小为16kb,即形成的Chunk能够使得数据在缓存中对齐,提高缓存命中率,以方便数据做并行计算。如对建筑信息模型场景中大量存在的柱子构件模型,使用组件可以只负责存储该构件的数据,使用实体可以只负责标记该构件,使用系统只负责该构件的一些程序逻辑处理,从而实现数据与行为的分离。基于多线程数据导向型技术堆栈,采用面向数据编程方式,实现模型数据与行为逻辑的分离。
S400:通过多个线程并行处理多个内存块中的数据,以对建筑信息模型进行加载。
具体地,线程(Thread)是程序中一个单一的顺序控制流程。在单个程序中同时运行多个线程完成不同的工作,称为多线程。多个线程共享数据空间,每个线程有自己的执行堆栈和程序计数器为其执行上下文。多线程主要是为了节约中央处理器(即CPU)时间,提高CPU利用率。使用线程可以把占据时间长的程序中的任务放到后台去处理,在一些等待的任务实现上,如用户输入、文件读写和网络收发数据等,使用线程可以释放一些珍贵的资源,如内存占用等。
具体地,在将实体集合的内存拆分为多个内存块后,可以通过多个线程并行处理多个内存块中的数据(例如一个线程对一个内存块中的数据进行处理,多个线程同步进行),实现多线程的多核并行运算,以达到大规模的数据处理,提升系统性能。
更具体地,在利用多个线程对内存块的数据进行数据处理的过程中,主要包括以下步骤:
S410:通过多个用于解析的线程,对多个内存块中的数据进行解析;用于解析的线程与内存块对应;
S420:通过多个用于渲染的线程,对多个解析数据构建相应的显示对象,以在显示界面上渲染出与第二模型数据对应的三维可视化图像;用于渲染的线程与解析数据对应,三维可视化图像包括多个显示对象。
在步骤S410至S420中,可以在拆分得到多个内存块后,通过每个解析线程对每个内存块的数据进行解析,以得到对应的解析数据;并通过渲染线程对解析数据构建成对应的显示对象,从而通过构建多个显示对象来渲染出对应的三维可视化图像。例如当待加载模型数据为多个柱子模型时,由于每个实体(即柱子模型)的组件类型都是相同的,可以将其组合成一个实体集合,从而将实体集合的内存拆分为多个内存块;然后多个解析线程对多个内存块的数据进行并行解析,再通过多个渲染线程对多个解析数据构建出多个显示对象,以在显示界面上渲染出对应的三维可视化图像。
本发明提供的建筑信息模型的加载方法,通过多个解析线程对多个内存块的数据进行并行解析,通过多个渲染线程对多个解析数据进行并行渲染,能够实现对数据的多线程并行运算,达到提高数据处理效率,提升系统性能的技术效果,以及实现对建筑信息模型数据的轻量化管理。
优选地,方法还包括:
预先为目标模型设置第一模型和第二模型,第一模型的显示精度高于第二模型的显示精度;
检测目标模型与视点之间的距离,以根据距离调整目标模型的显示精细程度;
当距离大于预设阈值时,将第二模型作为目标模型,用于模型显示;
当距离小于预设阈值时,将第一模型作为目标模型,用于模型显示。
具体地,还可以预设为模型构件添加多个不同显示精细程度的模型,可以根据该模型构件在场景环境中与观察者之间的距离,按百分比切换对应显示精度的模型,例如观察者视角距离一扇门小于预设距离阈值时,显示带有清晰纹路形状的门模型,当观察者视角距离一扇门大于或者等于预设距离阈值时显示为一个长方体或直接隐藏模型,即距离近时视野小,显示高精度模型,距离远视野大,显示低精度模型。
更具体地,预设阈值可以根据实际应用情况进行合理设定,在此不做具体限定,并且也可以设置多个预设阈值,以及设置多个不同显示精细程度的模型(不限于第一模型和第二模型,还可以其他模型)。以两个预设阈值为例:当目标模型与视点之间的距离小于或者等于第一预设阈值时,将第一模型作为目标模型进行显示;当目标模型与视点之间的距离大于第一预设阈值,小于或者等于第二预设阈值时,将第二模型作为目标模型进行显示;当目标模型与视点之间的距离大于第二预设阈值时,将第三模型作为目标模型进行显示。多个预设阈值的设置,以及多个显示精细程度的模型的设置,可以根据实际应用情况进行合理设定,在此不做具体限定。
本发明提供的建筑信息模型的加载方法,通过检测目标模型与视点之间的距离,以根据距离调整目标模型的显示精细程度,能够避免不必要的数据加载,进而提升模型的加载效率,从而解决相关技术中由于默认加载所有模型构件及其属性信息,导致加载时间长,容易出现卡顿现象的问题。
方法还包括:预先将建筑信息模型分割成多个指定区域;确定视点的视野覆盖到的目标区域,目标区域为多个指定区域中的至少一个;对目标区域内的建筑信息模型包含的构件进行渲染和显示。
具体地,将整个场景中的建筑信息模型分割成多个区域,当摄像机视野朝向某个区域时,即表示该区域内的模型构件会被渲染出来,而被遮挡的其他模型构件则不会被渲染,例如当观察者视角在一面墙前时,墙后面的模型则会被隐藏,不加入渲染流程,进而提高建筑信息模型的轻量化程度。
本发明提供的建筑信息模型的加载方法,通过对目标区域内的建筑信息模型包含的构件进行渲染和显示,能够避免对建筑信息模型中的所有模型构件进行数据加载的情况发生,节省了数据加载的时间,进而提高模型的加载效率。
方法还包括:
获取建筑信息模型中的目标构件的基本信息,基本信息包括但身份标识号和位置信息;
根据目标构件的位置信息,从数据库中按照层级关系逐级查询,得到多个对应位置信息的预选构件;
根据目标构件的身份标识号,从多个具有位置信息的预选构件中筛选得到目标构件。
具体地,层级关系包括但不限于地区-项目-单体-楼层-构件实例-构件属性信息,在对模型构件进行检索的过程中,需要先利用目标构件的位置信息从数据库中按照层级关系查询到对应层级的多个预选构件;然后在利用目标模型构件的唯一标识码(即身份标识号)从对应层级中的多个预选构件中匹配到对应的目标构件。
更具体地,在建筑信息模型场景中很多的模型构件都是相似的(比如门窗、机电管线等),该类模型构件单独用构件库进行储存,同一类型的构件只存储一次,其它相同构件只存储其身份标识号(即I D)和位置信息,以实现储存结构的优化,避免冗余数据,优化检索效率,最终完成构件快速检索和建筑信息模型的轻量化显示。除构建构件库外,关联材质材料库、纹理贴图库、参数属性库等其它建筑信息模块的数据库的组成部分,最终实现大量建筑信息模型数据的结构化储存,利用检索排序等技术实现搜索效率的快速化、准确化。
优选地,本实施例如图2所示:
1、在建筑信息化设计软件中设计制作建筑信息模型及其空间属性、基本属性和扩展属性等信息。
2.对建筑信息模型的几何信息和非几何信息应用轻量化处理方法(例如细节层次技术LOD和遮挡剔除技术Occ l us ion cu l l i ng等),通过二次开发的方式程序化导出为游戏引擎支持的数据格式。
3.将过程(2)中几何信息与非几何信息融合在游戏引擎Unity 3D中,实现模型的初步轻量化加载和属性信息的调用。
4.基于多线程数据导向型技术堆栈,即DOTS技术堆栈,应用ECS(Ent ityComponent System,实体组件系统)采用面向数据编程方式,实现模型数据与行为逻辑的分离,充分利用多核CPU,进行多线程运算实现建筑信息模型的轻量化计算;同时基于定制的检索规则,实现构件的快速检索。
本申请技术方案,还具备如下技术效果:通过结合游戏引擎,将数据按对计算机更友好的方式进行存储,并充分利用现代多核CPU的性能对建筑信息模型进行轻量化管理;并按照上文所诉检索规则实现对构件的快速检索流程。
实施例2
本施例提供一种建筑信息模型的加载装置,如图3所示,包括:
格式转换模块,用于对建筑信息模型中的第一模型数据进行格式转换处理,得到具有预设数据格式的第二模型数据;
实体组合模块,用于将通过第二模型数据表征的多个实体进行组合,得到实体集合;其中,实体包括至少一个组件,多个实体具有相同的组件类型,组件类型表示用于构成实体的组件的数据类型;
内存拆分模块,用于为实体集合分配内存,以及将内存拆分为多个内存块;
数据加载模块,用于通过多个线程并行处理多个内存块中的数据,以对建筑信息模型进行加载。
优选地,格式转换模块,包括:
第一格式转换模块,用于对几何模型数据进行格式转换处理,得到具有第一预设格式的第三模型数据;第一模型数据包括建筑信息模型的几何模型数据,预设数据格式包括第一预设格式,第二模型数据包括第三模型数据;几何模型数据包括:建筑模型数据、设施模型数据和组件模型数据。
优选地,格式转换模块,包括:
第二格式转换模块,用于对非几何模型数据进行格式转换处理,得到具有第二预设格式的第四模型数据;第一模型数据包括建筑信息模型的非几何模型数据,预设数据格式包括第二预设格式,第二模型数据包括第四模型数据;非几何模型数据包括:几何模型数据的属性数据和其他相关数据。
优选地,数据加载模块,包括:
数据解析单元,用于通过多个用于解析的线程,对多个内存块中的数据进行解析;用于解析的线程与内存块对应;
数据渲染单元,用于通过多个用于渲染的线程,对多个解析数据构建相应的显示对象,以在显示界面上渲染出与第二模型数据对应的三维可视化图像;用于渲染的线程与解析数据对应,三维可视化图像包括多个显示对象。
建筑信息模型的加载装置,还包括:
模型设置单元,用于预先为目标模型设置第一模型和第二模型,第一模型的显示精度高于第二模型的显示精度;
距离检测单元,用于检测目标模型与视点之间的距离,以根据距离调整目标模型的显示精细程度;
第一判断单元,用于当距离大于预设阈值时,将第二模型作为目标模型,用于模型显示;
第二判断单元,用于当距离小于预设阈值时,将第一模型作为目标模型,用于模型显示。
建筑信息模型的加载装置,还包括:
区域分割单元,用于预先将建筑信息模型分割成多个指定区域;
区域确定单元,用于确定视点的视野覆盖到的目标区域,目标区域为多个指定区域中的至少一个;
构件渲染单元,用于对目标区域内的建筑信息模型包含的构件进行渲染和显示。
建筑信息模型的加载装置,还包括:
信息获取单元,用于获取建筑信息模型中的目标构件的基本信息,基本信息包括身份标识号和位置信息;
构件查询单元,用于根据目标构件的位置信息,从数据库中按照层级关系逐级查询,得到多个对应位置信息的预选构件;
构件筛选单元,用于根据目标构件的身份标识号,从多个具有位置信息的预选构件中筛选得到目标构件。
实施例3
本发明还提供一种计算机设备,如图4所示,包括存储器和处理器,存储器存储有可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的各种实施方式提供的建筑信息模型的加载方法。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的各种实施方式提供的建筑信息模型的加载方法。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
Claims (10)
1.一种建筑信息模型的加载方法,其特征在于,包括:
对建筑信息模型中的第一模型数据进行格式转换处理,得到具有预设数据格式的第二模型数据;
将通过所述第二模型数据表征的多个实体进行组合,得到实体集合;其中,所述实体包括至少一个组件,所述多个实体具有相同的组件类型,所述组件类型表示用于构成所述实体的组件的数据类型;
为所述实体集合分配内存,以及将所述内存拆分为多个内存块;
通过多个线程并行处理所述多个内存块中的数据,以对所述建筑信息模型进行加载。
2.根据权利要求1所述的建筑信息模型的加载方法,其特征在于,所述对建筑信息模型中的第一模型数据进行格式转换处理,得到具有预设数据格式的第二模型数据,包括:
对几何模型数据进行格式转换处理,得到具有第一预设格式的第三模型数据;所述第一模型数据包括建筑信息模型的几何模型数据,所述预设数据格式包括所述第一预设格式,所述第二模型数据包括所述第三模型数据;所述几何模型数据包括:建筑模型数据、设施模型数据和组件模型数据。
3.根据权利要求1或2所述的建筑信息模型的加载方法,其特征在于,所述对建筑信息模型中的第一模型数据进行格式转换处理,得到具有预设数据格式的第二模型数据,包括:
对非几何模型数据进行格式转换处理,得到具有第二预设格式的第四模型数据;所述第一模型数据包括建筑信息模型的非几何模型数据,所述预设数据格式包括所述第二预设格式,所述第二模型数据包括所述第四模型数据;所述非几何模型数据包括:几何模型数据的属性数据和其他相关数据。
4.根据权利要求1或2所述的建筑信息模型的加载方法,其特征在于,所述通过多个线程并行处理所述多个内存块中的数据,包括:
通过多个用于解析的线程,对所述多个内存块中的数据进行解析;所述用于解析的线程与所述内存块对应;
通过多个用于渲染的线程,对多个解析数据构建相应的显示对象,以在显示界面上渲染出与所述第二模型数据对应的三维可视化图像;所述用于渲染的线程与所述解析数据对应,所述三维可视化图像包括多个显示对象。
5.根据权利要求4所述的建筑信息模型的加载方法,其特征在于,所述方法,还包括:
预先为目标模型设置第一模型和第二模型,所述第一模型的显示精度高于第二模型的显示精度;
检测所述目标模型与视点之间的距离,以根据所述距离调整所述目标模型的显示精细程度;
当所述距离大于预设阈值时,将所述第二模型作为目标模型,用于模型显示;
当所述距离小于预设阈值时,将所述第一模型作为目标模型,用于模型显示。
6.根据权利要求5所述的建筑信息模型的加载方法,其特征在于,所述方法还包括:
预先将所述建筑信息模型分割成多个指定区域;
确定所述视点的视野覆盖到的目标区域,所述目标区域为多个指定区域中的至少一个;
对所述目标区域内的所述建筑信息模型包含的构件进行渲染和显示。
7.根据权利要求1所述的建筑信息模型的加载方法,其特征在于,所述方法还包括:
获取所述建筑信息模型中的目标构件的基本信息,所述基本信息包括身份标识号和位置信息;
根据所述目标构件的位置信息,从数据库中按照层级关系逐级查询,得到多个对应所述位置信息的预选构件;
根据所述目标构件的身份标识号,从所述多个具有所述位置信息的预选构件中筛选得到目标构件。
8.一种建筑信息模型的加载装置,其特征在于,包括:
格式转换模块,用于对建筑信息模型中的第一模型数据进行格式转换处理,得到具有预设数据格式的第二模型数据;
实体组合模块,用于将通过所述第二模型数据表征的多个实体进行组合,得到实体集合;其中,所述实体包括至少一个组件,所述多个实体具有相同的组件类型,所述组件类型表示用于构成所述实体的组件的数据类型;
内存拆分模块,用于为所述实体集合分配内存,以及将所述内存拆分为多个内存块;
数据加载模块,用于通过多个线程并行处理所述多个内存块中的数据,以对所述建筑信息模型进行加载。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的建筑信息模型的加载方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述的建筑信息模型的加载方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211590215.4A CN115908715A (zh) | 2022-12-12 | 2022-12-12 | 建筑信息模型的加载方法及装置、设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211590215.4A CN115908715A (zh) | 2022-12-12 | 2022-12-12 | 建筑信息模型的加载方法及装置、设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115908715A true CN115908715A (zh) | 2023-04-04 |
Family
ID=86494660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211590215.4A Pending CN115908715A (zh) | 2022-12-12 | 2022-12-12 | 建筑信息模型的加载方法及装置、设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115908715A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116843107A (zh) * | 2023-09-04 | 2023-10-03 | 如是(北京)工程设计有限公司 | 一种基于bim技术的建筑信息智能管理系统 |
CN116977523A (zh) * | 2023-07-25 | 2023-10-31 | 深圳市快速直接工业科技有限公司 | 一种step格式在web端的渲染方法 |
-
2022
- 2022-12-12 CN CN202211590215.4A patent/CN115908715A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116977523A (zh) * | 2023-07-25 | 2023-10-31 | 深圳市快速直接工业科技有限公司 | 一种step格式在web端的渲染方法 |
CN116977523B (zh) * | 2023-07-25 | 2024-04-26 | 快速直接(深圳)精密制造有限公司 | 一种step格式在web端的渲染方法 |
CN116843107A (zh) * | 2023-09-04 | 2023-10-03 | 如是(北京)工程设计有限公司 | 一种基于bim技术的建筑信息智能管理系统 |
CN116843107B (zh) * | 2023-09-04 | 2023-11-10 | 如是(北京)工程设计有限公司 | 一种基于bim技术的建筑信息智能管理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11270497B2 (en) | Object loading method and apparatus, storage medium, and electronic device | |
CN115908715A (zh) | 建筑信息模型的加载方法及装置、设备、存储介质 | |
EP3570253B1 (en) | Method and device for reconstructing three-dimensional point cloud | |
US20150206028A1 (en) | Point cloud reduction apparatus, system, and method | |
CN110503718B (zh) | 三维工程模型轻量化显示方法 | |
CN112489213A (zh) | 三维地形模型生成方法、装置、电子设备及存储介质 | |
KR20180008575A (ko) | 정보 처리 장치, 방법, 및 프로그램 | |
CN113592390A (zh) | 一种基于多传感器融合的仓储数字孪生的方法与系统 | |
US9135749B2 (en) | Method and apparatus for processing three-dimensional model data | |
CN114596423A (zh) | 基于虚拟场景网格化的模型渲染方法、装置和计算机设备 | |
US9396705B2 (en) | Image processing method and image processing apparatus for drawing graphics in one area | |
CN109405807B (zh) | 一种大场景倾斜影像三维重建的分区方法 | |
US11615578B1 (en) | Systems and methods for efficient rendering and processing of point clouds using textures | |
CN106846498B (zh) | 激光点云渲染方法和装置 | |
CA3231502A1 (en) | Systems and methods for multi-tree deconstruction and processing of point clouds | |
CN116681857A (zh) | 一种空间碰撞检测方法、装置及电子设备 | |
CN114791800A (zh) | 白模建筑描边方法、装置、计算机设备及存储介质 | |
CN112491999B (zh) | 一种数据上报方法及装置 | |
US20130321414A1 (en) | Converting a 3d model into multiple matrices | |
CN113963028A (zh) | 一种碰撞检测方法、装置、计算机设备及存储介质 | |
CN113379826A (zh) | 物流件的体积测量方法以及装置 | |
CN114708230B (zh) | 基于图像分析的车架质量检测方法、装置、设备及介质 | |
CN115100364B (zh) | 输电线路激光点云数据的可视化方法、装置、设备及介质 | |
US11074749B2 (en) | Planar surface detection | |
CN117456550B (zh) | 基于mr的cad文件查看方法、装置、介质和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |