CN113901051A - 生成WebGL数据的方法及装置、存储介质及电子设备 - Google Patents
生成WebGL数据的方法及装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN113901051A CN113901051A CN202111182943.7A CN202111182943A CN113901051A CN 113901051 A CN113901051 A CN 113901051A CN 202111182943 A CN202111182943 A CN 202111182943A CN 113901051 A CN113901051 A CN 113901051A
- Authority
- CN
- China
- Prior art keywords
- model
- information
- target object
- storage
- file
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开提供了一种生成WebGL数据的方法、装置、电子设备及存储介质,涉及计算机技术领域。该方法包括:获取建筑信息模型的模型文件;解析模型文件以确定建筑信息模型在WebGL中的存储格式,以及解析模型文件得到建筑信息模型中目标对象的描述信息和目标对象的存储转换矩阵;根据各目标对象的描述信息和相应的存储转换矩阵,确定建筑信息模型的模型轮廓信息;根据存储格式存储模型轮廓信息,生成建筑信息模型的WebGL数据。该方法可以解析建筑信息模型的模型文件,得到各目标对象的详细描述信息,进而准确生成建筑信息模型的模型轮廓信息,从而以相应存储格式存储为建筑信息模型的WebGL数据。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种生成WebGL数据的方法及装置、存储介质及电子设备。
背景技术
在建筑信息的电子化存储场景中,BIM(Building Information Modeling,建筑信息模型)技术被广泛应用,Revit是其中一个主流的工具软件。在实际应用中,常常需要将Revit模型在WebGL(Web Graphics Library,web图形库)中显示。
相关技术中的实现方式是:设计师用户根据Revit模型中的各类尺寸标注和底图,其他诸如WebGL等引擎中通过手动方式完成绘制,这种方式效率低下且准确性差。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种生成WebGL数据的方法、装置、电子设备及存储介质,以解决在根据Revit模型将建筑信息存储为WebGL数据时效率低下且准确性差的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一个方面,提供一种生成WebGL数据的方法,包括:
获取建筑信息模型的模型文件;解析模型文件以确定建筑信息模型在WebGL中的存储格式,以及解析模型文件得到建筑信息模型中目标对象的描述信息和目标对象的存储转换矩阵;根据各目标对象的描述信息和相应的存储转换矩阵,确定建筑信息模型的模型轮廓信息;根据存储格式存储模型轮廓信息,生成建筑信息模型的WebGL数据。
在本公开一个实施例中,模型文件为Revit文件;以及,在解析模型文件之前,还包括:确认模型文件中所有对象和/或所有链接对象的可见性已开启。
在本公开一个实施例中,解析模型文件以确定模型文件的存储格式,包括:获取模型文件中模型的设备标识,和/或获取模型文件中链接对象对应的链接模型文件中模型的设备标识;调用设备记录表以确定与设备标识对应的设备类型,进而确定设备类型所属的通用标准类型;以相应的通用标准类型的存储格式作为模型文件和/或链接模型文件的存储格式。
在本公开一个实施例中,在解析模型文件得到建筑信息模型中目标对象的描述信息和目标对象的存储转换矩阵之前,还包括按如下方式确定目标对象:解析模型文件的文件名称,得到模型文件的业务标识;和/或解析模型文件中链接对象对应的链接模型文件的链接文件名称,得到链接模型文件的业务标识;根据业务标识,确定相应的模型文件和/或链接模型文件的业务类型;获取模型文件和/或链接模型文件中相应业务类型下的对象,以作为目标对象。
在本公开一个实施例中,解析模型文件得到建筑信息模型中目标对象的描述信息,包括:解析模型文件得到模型原始数据;调用对象存储规范信息以确定目标对象的数据存储规范,进而基于目标对象的数据存储规范确定目标对象的一个或多个轮廓描述属性;从模型原始数据中确定轮廓描述属性的属性值;以目标对象的所有轮廓描述属性的属性值,作为目标对象的描述信息。
在本公开一个实施例中,调用对象存储规范信息以确定目标对象的数据存储规范,包括:获取目标对象的对象类型;确定对象存储规范信息中与对象类型相对应的数据存储规范,以作为目标对象的数据存储规范;其中,对象类型包括:房间、墙轮廓、楼板、填充区域、门、窗、结构柱、自动扶梯、广告位、圆柱形屏幕、车位、楼梯、步行梯、栏杆扶手、物联网。
在本公开一个实施例中,解析模型文件得到建筑信息模型中目标对象的存储转换矩阵,包括:解析模型文件,得到模型文件中的对象,和/或链接对象对应的链接模型文件中的对象之间的层级结构;根据层级结构确定各目标对象的存储路径,进而确定各目标对象的存储转换矩阵。
在本公开一个实施例中,根据各目标对象的描述信息和相应的存储转换矩阵,确定建筑信息模型的模型轮廓信息,包括:对于各目标对象,依次根据存储转换矩阵对描述信息进行数据转换,得到各目标对象的待存储轮廓信息;其中,待存储轮廓信息指示了存储层级路径;将模型文件中所有目标对象的待存储轮廓信息基于相应的存储层级路径进行组建,得到建筑信息模型的模型轮廓信息。
在本公开一个实施例中,本申请提供的生成WebGL数据的方法还包括:当接收到建筑信息模型的WebGL数据的传输指令时,导出json格式的WebGL数据,以用于传输。
根据本公开的另一个方面,提供一种生成WebGL数据的装置,包括:
获取文件模块,用于获取建筑信息模型的模型文件;解析文件模块,用于解析模型文件以确定建筑信息模型在WebGL中的存储格式,以及解析模型文件得到建筑信息模型中目标对象的描述信息和目标对象的存储转换矩阵;数据转化模块,用于根据各目标对象的描述信息和相应的存储转换矩阵,确定建筑信息模型的模型轮廓信息;存储模块,用于根据存储格式存储模型轮廓信息,生成建筑信息模型的WebGL数据。
在本公开一个实施例中,模型文件为Revit文件;以及,在解析文件模块解析模型文件之前,获取文件模块还用于:确认模型文件中所有对象和/或所有链接对象的可见性已开启。
在本公开一个实施例中,解析文件模块解析模型文件以确定模型文件的存储格式,包括:获取模型文件中模型的设备标识,和/或获取模型文件中链接对象对应的链接模型文件中模型的设备标识;调用设备记录表以确定与设备标识对应的设备类型,进而确定设备类型所属的通用标准类型;以相应的通用标准类型的存储格式作为模型文件和/或链接模型文件的存储格式。
在本公开一个实施例中,在解析文件模块解析模型文件得到建筑信息模型中目标对象的描述信息和目标对象的存储转换矩阵之前,还包括按如下方式确定目标对象:解析模型文件的文件名称,得到模型文件的业务标识;和/或解析模型文件中链接对象对应的链接模型文件的链接文件名称,得到链接模型文件的业务标识;根据业务标识,确定相应的模型文件和/或链接模型文件的业务类型;获取模型文件和/或链接模型文件中相应业务类型下的对象,以作为目标对象。
在本公开一个实施例中,解析文件模块解析模型文件得到建筑信息模型中目标对象的描述信息,包括:解析模型文件得到模型原始数据;调用对象存储规范信息以确定目标对象的数据存储规范,进而基于目标对象的数据存储规范确定目标对象的一个或多个轮廓描述属性;从模型原始数据中确定轮廓描述属性的属性值;以目标对象的所有轮廓描述属性的属性值,作为目标对象的描述信息。
在本公开一个实施例中,解析文件模块调用对象存储规范信息以确定目标对象的数据存储规范,包括:获取目标对象的对象类型;确定对象存储规范信息中与对象类型相对应的数据存储规范,以作为目标对象的数据存储规范;其中,对象类型包括:房间、墙轮廓、楼板、填充区域、门、窗、结构柱、自动扶梯、广告位、圆柱形屏幕、车位、楼梯、步行梯、栏杆扶手、物联网。
在本公开一个实施例中,解析文件模块解析模型文件得到建筑信息模型中目标对象的存储转换矩阵,包括:解析模型文件,得到模型文件中的对象,和/或链接对象对应的链接模型文件中的对象之间的层级结构;根据层级结构确定各目标对象的存储路径,进而确定各目标对象的存储转换矩阵。
在本公开一个实施例中,数据转化模块根据各目标对象的描述信息和相应的存储转换矩阵,确定建筑信息模型的模型轮廓信息,包括:对于各目标对象,依次根据存储转换矩阵对描述信息进行数据转换,得到各目标对象的待存储轮廓信息;其中,待存储轮廓信息指示了存储层级路径;将模型文件中所有目标对象的待存储轮廓信息基于相应的存储层级路径进行组建,得到建筑信息模型的模型轮廓信息。
在本公开一个实施例中,本申请提供的生成WebGL数据的装置还包括:传输模块,传输模块用于当接收到建筑信息模型的WebGL数据的传输指令时,导出json格式的WebGL数据,以用于传输。
根据本公开的又一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的生成WebGL数据的方法。
根据本公开的再一个方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述的生成WebGL数据的方法。
本公开的实施例所提供的生成WebGL数据的方法,能够解析建筑信息模型的模型文件,得到各目标对象的详细描述信息,进而准确生成建筑信息模型的模型轮廓信息,从而以相应存储格式存储为建筑信息模型的WebGL数据。
进一步,本公开实施例提供的生成WebGL数据的方法还可以在有数据传输需求时,导出json格式的WebGL数据以发送给其他系统或客户端103。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了可以应用本公开实施例的生成WebGL数据的方法的示例性系统架构的示意图;
图2示出了本公开一个实施例的生成WebGL数据的方法的流程图;
图3示出了本公开一个实施例的生成WebGL数据的方法的示意图;
图4示出了本公开一个实施例的生成WebGL数据的方法中确定房间对象的待存储轮廓信息的示意图;
图5示出了本公开一个实施例的生成WebGL数据的方法中确定墙对象的待存储轮廓信息的示意图;
图6示出了本公开一个实施例的生成WebGL数据的方法中确定门对象的待存储轮廓信息的示意图;
图7示出了本公开一个实施例的生成WebGL数据的方法中确定圆柱形屏幕对象的待存储轮廓信息的示意图;
图8示出了本公开一个实施例的生成WebGL数据的方法中确定结构柱对象的待存储轮廓信息的示意图;
图9示出了本公开一个实施例的生成WebGL数据的方法中确定广告位对象的待存储轮廓信息的示意图;
图10了本公开一个实施例的生成WebGL数据的装置的框图;和
图11了本公开实施例中一种生成WebGL数据的计算机设备的结构框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本公开的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
针对上述相关技术中存在的技术问题,本公开实施例提供了一种生成WebGL数据的方法,以用于至少解决上述技术问题中的一个或者全部。
图1示出了可以应用本公开实施例的生成WebGL数据的方法的示例性系统架构的示意图;如图1所示:
该系统架构可以包括服务器101、网络102和客户端103。网络102用以在客户端103和服务器101之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
服务器101可以是提供各种服务的服务器,例如可以获取建筑信息模型的模型文件、解析模型文件、将模型文件中对象的待存储轮廓信息组建为建筑信息模型的模型轮廓信息、根据模型轮廓信息生成建筑信息模型的WebGL数据的后台管理服务器。后台管理服务器可以对接收到的建筑信息模型的模型文件进行解析,得到各目标对象的详细描述信息,进而准确生成建筑信息模型的模型轮廓信息,从而以相应存储格式存储为建筑信息模型的WebGL数据。
在一些实施例中,服务器101还可以在需要传输数据时,导出json格式的WebGL数据以发送给其他系统或客户端103。
客户端103可以是手机、游戏主机、平板电脑、电子书阅读器、智能眼镜、智能家居设备、AR(Augmented Reality,增强现实)设备、VR(Virtual Reality,虚拟现实)设备等移动终端,或者,客户端103也可以是个人计算机,比如膝上型便携计算机和台式计算机等等。
应该理解,图1中的客户端、网络和服务器的数目仅仅是示意性的,服务器101可以是一个实体的服务器,还可以为多个服务器组成的服务器集群,还可以是云端服务器,根据实际需要,可以具有任意数目的客户端、网络和服务器。
下面,将结合附图及实施例对本公开示例实施例中的生成WebGL数据的方法的各个步骤进行更详细的说明。
图2示出了本公开一个实施例的生成WebGL数据的方法的流程图。本公开实施例提供的方法可以由如图1所示的服务器或客户端中执行,但本公开并不限定于此。
在下面的举例说明中,以服务器集群101为执行主体进行示例说明。
如图2所示,本公开实施例提供的生成WebGL数据的方法可以包括以下步骤:
步骤S201,获取建筑信息模型的模型文件;在一些实际应用中,模型文件可以是Revit文件;Revit文件中包含许多信息,模型轮廓数据通常只需用到其中一部分,因此需要在后续步骤中对文件进行解析,提取所需的数据。
步骤S203,解析模型文件以确定建筑信息模型在WebGL中的存储格式,以及解析模型文件得到建筑信息模型中目标对象的描述信息和目标对象的存储转换矩阵;获取到的模型文件可以是设计师用户基于一定标准创建和配置的文件,进而可以通过对文件的文件名称、对文件中的模型信息进行解析,确定上述存储格式、对象的描述信息、对象的存储转换矩阵等必要信息。
步骤S205,根据各目标对象的描述信息和相应的存储转换矩阵,确定建筑信息模型的模型轮廓信息;在解析文件得到目标对象的描述信息和相应的存储转换矩阵后,可以得到各目标对象的待存储轮廓信息,进而进行准确的组装以生成建筑信息模型完整且准确的模型轮廓信息。
步骤S207,根据存储格式存储模型轮廓信息,生成建筑信息模型的WebGL数据;基于已确定出的存储格式对模型轮廓信息,生成WebGL数据,以用于在WebGL引擎中准确存储,进而可以在有需要时在WebGL引擎中快速且正确地还原模型的轮廓或者指定对象的轮廓。
通过本申请中的方法,可以解析建筑信息模型的模型文件,得到各目标对象的详细描述信息,进而准确生成建筑信息模型的模型轮廓信息,从而以相应存储格式存储为建筑信息模型的WebGL数据。本申请中的方法可以实现从BIM模型中自动解析出与线下一致的楼栋、楼层、商铺、资源、点位及工程条件线上数据,以WebGL标准结构入库存储,大大提升了建筑信息存储转化的存储效率和准确率。
在一些实施例中,模型文件为Revit文件;以及,在解析模型文件之前,还包括:确认模型文件中所有对象和/或所有链接对象的可见性已开启。
在获取到文件后,可以先打开所需对象的可见性,包括链接的可见性。在一些实际应用中,若提前确定对象类型,也可以只打开指定类型对象的可见性。其中,Revit文件中的链接对象可以用于确定相对应的链接模型文件。
在一些实施例中,解析模型文件以确定模型文件的存储格式,包括:获取模型文件中模型的设备标识,和/或获取模型文件中链接对象对应的链接模型文件中模型的设备标识;调用设备记录表以确定与设备标识对应的设备类型,进而确定设备类型所属的通用标准类型;以相应的通用标准类型的存储格式作为模型文件和/或链接模型文件的存储格式。
设计人员在创建模型文件时,可以基于约定的规则为模型文件中的模型添加自定义属性,以用于记录模型的C2设备编号属性,即与模型在真实应用场景中对应的设备(如店铺、广告位)的设备标识。
进一步地,设计人员在创建模型文件中对象的建筑数据时,应使得对象的建筑数据符合对象的设备类型所属的通用标准类型(即原件类型)的数据存储规范,使得在后续步骤中可以应用相应数据存储规范读取到所需数据。
在一些实际应用中,设备类型与通用标准类型的对应关系可以如表1所示:
表1
设备类型 | 通用标准类型 |
墙/幕墙 | 系统族-墙 |
楼层 | 系统族-楼板 |
挑空区域 | 系统族-楼板编辑 |
主力店 | 系统族-填充区域 |
直梯-无障碍电梯 | 专用设备 |
直梯-货梯 | 专用设备 |
扶梯 | 专用设备 |
坡梯厅 | 专用设备 |
…… | …… |
在一些实施例中,在解析模型文件得到建筑信息模型中目标对象的描述信息和目标对象的存储转换矩阵之前,还包括按如下方式确定目标对象:解析模型文件的文件名称,得到模型文件的业务标识;和/或解析模型文件中链接对象对应的链接模型文件的链接文件名称,得到链接模型文件的业务标识;根据业务标识,确定相应的模型文件和/或链接模型文件的业务类型;获取模型文件和/或链接模型文件中相应业务类型下的对象,以作为目标对象。
设计人员在创建模型文件时,可以基于约定的规则在文件名称中添加模型对应的“专业”信息(即业务类型),其中,“专业”信息可以认为是与建筑的应用场景类型/业务类型相关的信息。如:在文件名称中的指定位置添加业务标识字段,进而可以通过解析文件名称以在文件名称中的指定字段获取到模型文件的业务标识。获取到模型文件的业务标识后,可以将模型文件中该业务类型下的对象作为目标对象,进而在后续步骤中只需从模型文件内的繁多数据中提取目标对象的相关数据即可,实现所需数据的高效提取。如:当获取到文件名称中含有结构类型的业务标识后,则可以将模型文件中“结构类型”下的所有对象作为目标对象。
当模型文件中含有链接对象时,可以依次确定出链接对象对应的链接模型文件,按照上述方法确定各链接模型文件的业务类型,进而确定出各链接模型文件中的目标对象。
在一些实际应用中,业务类型与业务标识的对应关系可以如表2所示:
表2
业务类型 | 业务标识 |
建筑 | -A- |
结构 | -S- |
暖通 | -M- |
家用给排水 | -P- |
暖气管道给排水 | -F- |
电器 | -E- |
…… | …… |
在一些实施例中,解析模型文件得到建筑信息模型中目标对象的描述信息,包括:解析模型文件得到模型原始数据;调用对象存储规范信息以确定目标对象的数据存储规范,进而基于目标对象的数据存储规范确定目标对象的一个或多个轮廓描述属性;从模型原始数据中确定轮廓描述属性的属性值;以目标对象的所有轮廓描述属性的属性值,作为目标对象的描述信息。
进一步地,一些实施例中,调用对象存储规范信息以确定目标对象的数据存储规范,包括:获取目标对象的对象类型;确定对象存储规范信息中与对象类型相对应的数据存储规范,以作为目标对象的数据存储规范;其中,对象类型包括:房间、墙轮廓、楼板、填充区域、门、窗、结构柱、自动扶梯、广告位、圆柱形屏幕、车位、楼梯、步行梯、栏杆扶手、物联网。
对象存储规范信息可以是根据WebGL协议中的相关信息确定的,为使得对象可以在WebGL中显示,不同对象类型可以具有不同的描述方式,即具有不同的轮廓描述属性。例如,对于墙体对象,轮廓描述属性可以包括:墙起始点、墙体厚度、对齐方式等属性信息;对于广告位对象,轮廓描述属性可以包括:插入点、长宽高信息、资源位置等属性信息。
在一些实施例中,解析模型文件得到建筑信息模型中目标对象的存储转换矩阵,包括:解析模型文件,得到模型文件中的对象,和/或链接对象对应的链接模型文件中的对象之间的层级结构;根据层级结构确定各目标对象的存储路径,进而确定各目标对象的存储转换矩阵。
进一步地,在一些实施例中,根据各目标对象的描述信息和相应的存储转换矩阵,确定建筑信息模型的模型轮廓信息,包括:对于各目标对象,依次根据存储转换矩阵对描述信息进行数据转换,得到各目标对象的待存储轮廓信息;其中,待存储轮廓信息指示了存储层级路径;将模型文件中所有目标对象的待存储轮廓信息基于相应的存储层级路径进行组建,得到建筑信息模型的模型轮廓信息。
当模型文件中包含链接对象时,对象的存储转换矩阵可以指示对象的描述信息在整个文件结构中的路由路径。通过这种方式,可以在文件中存在多层级结构的情况下,确定各个对象的描述信息的存储层级路径,准确存储各个对象的描述信息,进而组建出整个建筑信息模型的模型轮廓信息。通过该方式得到的模型轮廓信息,可以在WebGL中快速且正确地还原模型的轮廓或者指定对象的轮廓。
图3示出了本公开一个实施例的生成WebGL数据的方法的示意图,如图3所示,包括:
(1),打开Revit模型文件,并打开其中各对象的可见性,包括链接对象的可见性;在一些实际应用中,若提前确定对象类型,也可以只打开指定类型对象的可见性;
(2),根据对象类型以相应类型对应的数据存储规范获取对象的数据,读取每一个对象需要获取的具体数据,如:对象的描述信息、对象的存储转换矩阵、对象的面积信息、其他属性信息等。其中,描述信息中可以包含一种或多种轮廓描述属性。
(3),对于读取到的描述信息,可以通过存储转换矩阵重新计算,以确定对象的待存储轮廓信息;通过这种方式,可以在文件中存在多层级结构的情况下,确定各个对象的描述信息的存储层级路径,准确存储各个对象的描述信息。
(4),根据建筑信息模型在WebGL中的存储格式存储模型轮廓信息。
(5),可以通过递归方式,读取Revit文件中所有链接对象对应的链接模型文件,对其中每个文件都执行步骤(1)~(4)的过程。当遍历完所有文件时,可以确定数据存储完成。
(6),有数据传输需求时,可以导出json格式的WebGL数据,以进行数据传输。
图4示出了本公开一个实施例的生成WebGL数据的方法中确定房间对象的待存储轮廓信息的示意图,如图4所示,可以根据房间边界,获取房间边界的点族,组合为闭合的点组信息,并读取房间面积值;再通过相应的存储转换矩阵进行数据存储,确定房间对象的待存储轮廓信息。
图5示出了本公开一个实施例的生成WebGL数据的方法中确定墙对象的待存储轮廓信息的示意图,如图5所示,可以读取墙的轮廓线点组,并读取墙的厚度、对齐方式等属性信息;再通过相应的存储转换矩阵进行数据存储,确定墙对象的待存储轮廓信息。
图6示出了本公开一个实施例的生成WebGL数据的方法中确定门对象的待存储轮廓信息的示意图,如图6所示,可以读取门的插入点、门高值、门宽值、所属墙,通过所属墙的方向,计算门的左右点位置;再通过相应的存储转换矩阵进行数据存储,确定门对象的待存储轮廓信息。
图7示出了本公开一个实施例的生成WebGL数据的方法中确定圆柱形屏幕对象的待存储轮廓信息的示意图,如图7所示,可以读取圆柱形广告的所有面数据,根据单个面数据计算三角面信息;再通过相应的存储转换矩阵进行数据存储,确定圆柱形屏幕对象的待存储轮廓信息。
图8示出了本公开一个实施例的生成WebGL数据的方法中确定结构柱对象的待存储轮廓信息的示意图,如图8所示,可以先获取结构柱的所有面,然后从中计算出标高最低的面,作为结构柱的数据;再通过相应的存储转换矩阵进行数据存储,确定结构柱对象的待存储轮廓信息。
图9示出了本公开一个实施例的生成WebGL数据的方法中确定广告位对象的待存储轮廓信息的示意图,如图9所示,可以提取按照约定规则会输入长、宽、高、资源位置信息,提取广告位的插入点;再通过相应的存储转换矩阵进行数据存储,确定广告位对象的待存储轮廓信息。
在一些实施例中,本公开一个实施例的生成WebGL数据的方法中还可以按如下方式确定自动扶梯对象的待存储轮廓信息:提取扶梯的包络盒子,计算扶梯的长、宽、高、中心点信息;再通过相应的存储转换矩阵进行数据存储,确定自动扶梯对象的待存储轮廓信息。
在一些实施例中,本公开一个实施例的生成WebGL数据的方法中还可以按如下方式确定物联网点位数据对象的待存储轮廓信息:提取模型的插入点信息,并根据命名得到对应的类型;再通过相应的存储转换矩阵进行数据存储,确定物联网点位数据对象的待存储轮廓信息。
在一些实施例中,本申请提供的生成WebGL数据的方法还包括:当接收到建筑信息模型的WebGL数据的传输指令时,导出json格式的WebGL数据,以用于传输。
在本申请的方法中,当导出需求为“导出整个模型”时,可以对模型进行导出或展示;当导出需求为“导出指定对象”时,可以对模型中的指定对象进行导出或展示。
需要注意的是,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
图10示出本公开第五实施例中一种生成WebGL数据的装置1000的框图;如图10所示,包括:
获取文件模块1001,用于获取建筑信息模型的模型文件;解析文件模块1002,用于解析所述模型文件以确定所述建筑信息模型在WebGL中的存储格式,以及解析所述模型文件得到所述建筑信息模型中目标对象的描述信息和目标对象的存储转换矩阵;数据转化模块1003,用于根据各目标对象的描述信息和相应的存储转换矩阵,确定所述建筑信息模型的模型轮廓信息;存储模块1004,用于根据所述存储格式存储所述模型轮廓信息,生成所述建筑信息模型的WebGL数据。
在一些实施例中,本申请提供的生成WebGL数据的装置还包括:传输模块1005,传输模块用于当接收到建筑信息模型的WebGL数据的传输指令时,导出json格式的WebGL数据,以用于传输。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
图11示出本公开实施例中一种生成WebGL数据的计算机设备的结构框图。需要说明的是,图示出的电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
下面参照图11来描述根据本发明的这种实施方式的电子设备1100。图11显示的电子设备1100仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图11所示,电子设备1100以通用计算设备的形式表现。电子设备1100的组件可以包括但不限于:上述至少一个处理单元1110、上述至少一个存储单元1120、连接不同系统组件(包括存储单元1120和处理单元1110)的总线1130。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元1110执行,使得所述处理单元1110执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元1110可以执行如图2中所示的步骤S201,获取建筑信息模型的模型文件;在一些实际应用中,模型文件可以是Revit文件;步骤S203,解析模型文件以确定建筑信息模型在WebGL中的存储格式,以及解析模型文件得到建筑信息模型中目标对象的描述信息和目标对象的存储转换矩阵;步骤S205,根据各目标对象的描述信息和相应的存储转换矩阵,确定建筑信息模型的模型轮廓信息;步骤S207,根据存储格式存储模型轮廓信息,生成建筑信息模型的WebGL数据。
存储单元1120可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)11201和/或高速缓存存储单元11202,还可以进一步包括只读存储单元(ROM)11203。
存储单元1120还可以包括具有一组(至少一个)程序模块11205的程序/实用工具11204,这样的程序模块11205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线1130可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备1100也可以与一个或多个外部设备1200(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1100交互的设备通信,和/或与使得该电子设备1100能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口1150进行。并且,电子设备1100还可以通过网络适配器1160与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器1160通过总线1130与电子设备1100的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1100使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
根据本发明实施方式的用于实现上述方法的程序产品,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。
Claims (12)
1.一种生成WebGL数据的方法,其特征在于,包括:
获取建筑信息模型的模型文件;
解析所述模型文件以确定所述建筑信息模型在WebGL中的存储格式,以及解析所述模型文件得到所述建筑信息模型中目标对象的描述信息和目标对象的存储转换矩阵;
根据各目标对象的描述信息和相应的存储转换矩阵,确定所述建筑信息模型的模型轮廓信息;
根据所述存储格式存储所述模型轮廓信息,生成所述建筑信息模型的WebGL数据。
2.根据权利要求1所述的方法,其特征在于,所述模型文件为Revit文件;以及,在解析所述模型文件之前,还包括:
确认所述模型文件中所有对象和/或所有链接对象的可见性已开启。
3.根据权利要求2所述的方法,其特征在于,解析所述模型文件以确定所述模型文件的存储格式,包括:
获取所述模型文件中模型的设备标识,和/或获取所述模型文件中链接对象对应的链接模型文件中模型的设备标识;
调用设备记录表以确定与所述设备标识对应的设备类型,进而确定所述设备类型所属的通用标准类型;
以相应的通用标准类型的存储格式作为所述模型文件和/或链接模型文件的存储格式。
4.根据权利要求2所述的方法,其特征在于,在解析所述模型文件得到所述建筑信息模型中目标对象的描述信息和目标对象的存储转换矩阵之前,还包括按如下方式确定所述目标对象:
解析所述模型文件的文件名称,得到所述模型文件的业务标识;和/或解析所述模型文件中链接对象对应的链接模型文件的链接文件名称,得到所述链接模型文件的业务标识;
根据所述业务标识,确定相应的模型文件和/或链接模型文件的业务类型;
获取所述模型文件和/或链接模型文件中相应业务类型下的对象,以作为所述目标对象。
5.根据权利要求4所述的方法,其特征在于,解析所述模型文件得到所述建筑信息模型中目标对象的描述信息,包括:
解析所述模型文件得到模型原始数据;
调用对象存储规范信息以确定所述目标对象的数据存储规范,进而基于所述目标对象的数据存储规范确定所述目标对象的一个或多个轮廓描述属性;
从所述模型原始数据中确定所述轮廓描述属性的属性值;以所述目标对象的所有轮廓描述属性的属性值,作为所述目标对象的描述信息。
6.根据权利要求5所述的方法,其特征在于,调用对象存储规范信息以确定所述目标对象的数据存储规范,包括:
获取所述目标对象的对象类型;
确定所述对象存储规范信息中与所述对象类型相对应的数据存储规范,以作为所述目标对象的数据存储规范;
其中,所述对象类型包括:房间、墙轮廓、楼板、填充区域、门、窗、结构柱、自动扶梯、广告位、圆柱形屏幕、车位、楼梯、步行梯、栏杆扶手、物联网。
7.根据权利要求4所述的方法,其特征在于,解析所述模型文件得到所述建筑信息模型中目标对象的存储转换矩阵,包括:
解析所述模型文件,得到所述模型文件中的对象,和/或链接对象对应的链接模型文件中的对象之间的层级结构;
根据所述层级结构确定各目标对象的存储路径,进而确定各目标对象的存储转换矩阵。
8.根据权利要求1所述的方法,其特征在于,根据各目标对象的描述信息和相应的存储转换矩阵,确定所述建筑信息模型的模型轮廓信息,包括:
对于各目标对象,依次根据所述存储转换矩阵对所述描述信息进行数据转换,得到各目标对象的待存储轮廓信息;其中,所述待存储轮廓信息指示了存储层级路径;
将所述模型文件中所有目标对象的待存储轮廓信息基于相应的存储层级路径进行组建,得到所述建筑信息模型的模型轮廓信息。
9.根据权利要求1所述的方法,其特征在于,还包括:
当接收到所述建筑信息模型的WebGL数据的传输指令时,导出json格式的WebGL数据,以用于传输。
10.一种生成WebGL数据的装置,其特征在于,包括:
获取文件模块,用于获取建筑信息模型的模型文件;
解析文件模块,用于解析所述模型文件以确定所述建筑信息模型在WebGL中的存储格式,以及解析所述模型文件得到所述建筑信息模型中目标对象的描述信息和目标对象的存储转换矩阵;
数据转化模块,用于根据各目标对象的描述信息和相应的存储转换矩阵,确定所述建筑信息模型的模型轮廓信息;
存储模块,用于根据所述存储格式存储所述模型轮廓信息,生成所述建筑信息模型的WebGL数据。
11.一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如权利要求1至9任一项所述的生成WebGL数据的方法。
12.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至9任一项所述的生成WebGL数据的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111182943.7A CN113901051A (zh) | 2021-10-11 | 2021-10-11 | 生成WebGL数据的方法及装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111182943.7A CN113901051A (zh) | 2021-10-11 | 2021-10-11 | 生成WebGL数据的方法及装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113901051A true CN113901051A (zh) | 2022-01-07 |
Family
ID=79191256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111182943.7A Pending CN113901051A (zh) | 2021-10-11 | 2021-10-11 | 生成WebGL数据的方法及装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113901051A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114549767A (zh) * | 2022-04-24 | 2022-05-27 | 广州中望龙腾软件股份有限公司 | 一种plm模型处理方法、系统、装置和可读介质 |
-
2021
- 2021-10-11 CN CN202111182943.7A patent/CN113901051A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114549767A (zh) * | 2022-04-24 | 2022-05-27 | 广州中望龙腾软件股份有限公司 | 一种plm模型处理方法、系统、装置和可读介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210183160A1 (en) | Method and system for automated generation of a wall panel 2d drawings from a 3d model | |
CN113064897B (zh) | 一种业务指标模型的生成方法、装置、设备及存储介质 | |
CN111161390A (zh) | 一种基于BIM模型和WebGL的渲染方法及装置 | |
CN116244387A (zh) | 实体关系构建方法、装置、电子设备及存储介质 | |
CN113901051A (zh) | 生成WebGL数据的方法及装置、存储介质及电子设备 | |
CN114065342A (zh) | 户型轮廓的生成方法、装置、存储介质及电子设备 | |
CN110866205A (zh) | 用于存储信息的方法和装置 | |
CN111523169A (zh) | 一种装修方案生成方法、装置、电子设备及存储介质 | |
CN111291936A (zh) | 产品生命周期预估模型生成方法、装置及电子设备 | |
CN114358742A (zh) | 一种工作流执行方法、装置、设备及存储介质 | |
CN113806556A (zh) | 基于电网数据的知识图谱的构建方法、装置、设备及介质 | |
CN113792138A (zh) | 报表生成方法、装置、电子设备及存储介质 | |
US20200192784A1 (en) | Estimating the number of coding styles by analyzing source code | |
CN111125272B (zh) | 一种区域特征获取方法、装置、计算机设备及介质 | |
CN113656877A (zh) | 多层户型的模型生成方法、装置、介质及电子设备 | |
CN114969383B (zh) | 一种基于零代码开发的应用处理方法和装置 | |
CN116991693B (zh) | 一种测试方法、装置、设备及存储介质 | |
CN111027287B (zh) | 一种计算机可执行脚本的转换方法及相关装置 | |
CN117608567A (zh) | 一种根据用户画像自动生成界面的方法、介质及设备 | |
CN116305382A (zh) | 基于三维场景的布线方法及装置、存储介质及电子设备 | |
CN114115854A (zh) | 一种sdk文件生成方法、装置、设备以及存储介质 | |
CN114238814A (zh) | 确定源数据的方法、装置、电子设备及存储介质 | |
CN113468055A (zh) | 一种系统测试的方法和装置 | |
CN117972805A (zh) | 一种基于建筑图纸的数据处理方法和装置 | |
CN114327583A (zh) | 一种超图构建方法、装置、设备及存储介质 |
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 |