CN112989458B - 一种BIM模型到3DTiles文件的转换方法 - Google Patents
一种BIM模型到3DTiles文件的转换方法 Download PDFInfo
- Publication number
- CN112989458B CN112989458B CN202110196869.8A CN202110196869A CN112989458B CN 112989458 B CN112989458 B CN 112989458B CN 202110196869 A CN202110196869 A CN 202110196869A CN 112989458 B CN112989458 B CN 112989458B
- Authority
- CN
- China
- Prior art keywords
- component
- 3dtiles
- components
- representation
- external
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/13—Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Geometry (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Structural Engineering (AREA)
- Mathematical Optimization (AREA)
- Civil Engineering (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Architecture (AREA)
- Pure & Applied Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种BIM模型到3DTiles文件的转换方法,将BIM模型构件分为内部于外部构件,并进一步将构件分为可实例化绘制构件和不需实例化绘制构件。基于这四个构件集合并以几何数据与非几何数据分离的思想构建3DTiles文件,可极大的提高3DTiles加载及渲染效率,其中以“ADD”方式组建3DTiles文件的HLOD结构又可实现BIM模型构件的交互式操作,能进一步提高BIM模型应用价值。
Description
技术领域
本发明涉及BIM技术,特别是一种BIM模型到3DTiles文件的转换方法。
背景技术
BIM模型具有多源异构(常见的BIM设计平台有Autodesk、Bentley、CATIA等,不同设计平台具有不同的BIM文件结构)、几何图形量巨大、工程结构量巨大等特性。3DTiles是一种基于数据流的大规模异构3D地理数据集的开放标准。将BIM数据转换成3DTiles后可实现BIM数据的进一步价值提升。现有技术构建3DTiles文件组织其空间结构树的空间结构组织方式,将导致3DTiles文件加载及渲染效率低,影响基于3DTiles文件的BIM模型应用功能。
发明内容
本发明的发明目的在于:针对现有技术存在的现有技术BIM模型转换3DTiles文件导致加载及渲染效率低的问题,提供一种。
为了实现上述目的,本发明采用的技术方案为:
一种BIM模型到3DTiles文件的转换方法,包括:
S100将BIM模型的数据分为几何数据集合及非几何数据集合;
S200对几何数据集合,基于构件划分,建立构件集合;
将构件识别为外部构件或内部构件,并建立外部构件集合和内部构件集合;
将构件识别为可实例化表示构件或不可实例化表示构件,并建立可实例化表示集合和不可实例化表示集合;
S300基于外部构件集合、内部构件集合、可实例化表示集合和不可实例化表示集合,分别以ADD方式构造3DTiles文件中的tiles,形成最终的3DTiles的tileset.json文件。
优选的,所述步骤S100中,所述几何数据集合为表示构件几何形状及材质的集合。
优选的,所述步骤S100中,所述非几何数据集合为包含构件的层级结构及构件的属性数据的集合。
优选的,所述步骤S200中,建立外部构件集合和内部构件集合的方法包括如下步骤:
S211对构件进行构件ID编码;
S212将构件ID编码转换为R、G、B三个分量的格式;
S213利用OpenGL,前、后、左、右、上、下六个方向分别以正交投影渲染构件集合,得到所有的外部构件,并建立外部构件集合和内部构件集合。
优选的,所述步骤S200中,建立可实例化表示集合和不可实例化表示集合的方法包括如下步骤:
S221设定构件的MD5特征码计算方式;
S222根据所述MD5特征码计算方式,对构件集合的构件进行计算;
S223 MD5特征码重复的构件为实例化绘制构件,根据所有实例化绘制构件建立可实例化表示集合;
MD5特征码不重复的构件为正常绘制构件,根据所有正常绘制构件建立不可实例化表示集合。
优选的,所述步骤S300中,在组织3DTiles文件时,以“ADD”方式构建HLOD层级结构,并将外部构件与内部构件以外部链接的方式设为3DTiles根节点的两个子节点,其中内部构件子节点设置viewerRequestVolume的值。
优选的,所述步骤S300中,viewerRequestVolume的大小为内部构件集合包围盒的1.5倍至2.0倍。
一种电子设备,包括至少一个处理器,以及与所述至少一个处理器通信连接的存储器;所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行以上任一项所述的方法。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
本发明的一种BIM模型到3DTiles文件的转换方法,将BIM模型构件分为内部于外部构件,并进一步将构件分为可实例化绘制构件和不需实例化绘制构件。基于这四个构件集合并以几何数据与非几何数据分离的思想构建3DTiles文件,可极大的提高3DTiles加载及渲染效率,其中以“ADD”方式组建3DTiles文件的HLOD结构又可实现BIM模型构件的交互式操作,能进一步提高BIM模型应用价值。
附图说明
图1是本发明的BIM模型转3DTiles的流程图。
图2为内外部构件转3DTiles时节点组织方式示意图。
图3为数据库表结构示意图。
图4为内外部构件集合分类方法流程图。
图5为实例化与正常绘制集合分类方法流程图。
图6是本发明提供的一种电子设备的结构示意图。
具体实施方式
下面结合附图,对本发明作详细的说明。
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
实施例1
如图1所示:将BIM模型分为几何数据与非几何数据,其中非几何数据包含BIM构件层级结构关系及构件属性数据。进一步将BIM构件分为外部构件与内部构件,针对内部构件与外部构件又将其分为实例化绘制构件与正常绘制构件。在组织3DTiles文件时,以“ADD”方式构件HLOD层级结构,并将外部构件与内部构件以外部链接的方式设为3DTiles根节点的两个子节点,其中内部构件子节点一定要设置“viewerRequestVolume”选项,viewerRequestVolume的大小为内部构件集合包围盒的1.5倍至2.0倍。
如图2所示:内\外部构件集合转3DTiles节点json文件时,首先将其分为实例化绘制构件与正常绘制构件。每一个实例化绘制构件转一个3DTiles的i3dm模型文件,正常绘制构件需基于其包围盒构建空间结构树(不一定是八叉树),将空间结构树根节点内所有构建转成一个3DTiles的b3dm模型文件,同时合并上述b3dm与i3dm文件为3DTiles的cmpt模型文件,将此cmpt文件设置3DTile节点内容模型;空间结构树子节点转成对应3DTiles节点的子节点外部链接json文件。
正常绘制构建集合构建空间结构树过程如下:获取整个集合包围盒,将此包围盒范围设置为空间结构树根节点,再计算根节点的所有子节点,根节点计算子节点并非直接八等分,而是根据根节点X\Y\Z三个轴向包围盒长度,有选择性的二等分、四等分或者八等分,此处空间结构树分割方式主要是为了避免子节点包围盒三个轴向长度差距过大。任取正常绘制构件集合中一个构件,计算其包围盒,判断其包围盒空间是否属于根节点任意子节点范围,若不属于,则将该构件归属于根节点,若属于其中某个子节点,则继续按上述原则判断,同时,为避免空间结构树深度过大,可设置一个阈值,如空间结构树节点包围盒三个轴向最大长度小于1.0米时不再细分。
构件集合内外部判断方式如图4所示:构件ID按顺序编码,依据构件ID构建构建Shader中Unifom pickID值,再通过OpenGL以前、后、上、下、右八个方向构建OpenGL正交投影矩阵将此Unifom值渲染至对应的RenderTarget纹理中,即此时OpenGL渲染BIM构件集合获得的是集合中八个方向能看见的构件的ID所组成的图片。遍历此八个图片中的每个像素按图4所示算法即可得到对应构件ID,最终可将BIM构件分为内部构件与外部构件。
如图5所示:通过计算BIM构件MD5特征码即可将构件集合分为实例化绘制集合与正常绘制集合。MD5特征码计算方式可以依据构件几何数据中顶点个数、三角形个数、几何中心点坐标、纹理材质等特征值计算。
数据库中表结构如图3所示:其中Scene结构表中ID为构件的ID;PID为构件父级ID;GUID为构件GUID,此GUID是几何数据与属性数据关联的纽带;Name为构件名称;Level表示此节点是否为叶子节点;CenterX、CenterY、CenterZ、Radius为WGS84笛卡尔坐标系下包围球中心,由于3DTiles是按需加载绘制的,此包围球数据可用于基于构件GUID将三维场景定位至对应构件处。Attribute属性表中ID字段用于与结构表对应;AttGroup是属性分组名称;AttName是属性名称;AttValue是属性值。
实施例2
如图6所示,根据本发明示例性实施例的电子设备(例如具备程序执行功能的计算机服务器),其包括至少一个处理器,电源,以及与所述至少一个处理器通信连接的存储器和输入输出接口;所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行前述任一实施例所公开的方法;所述输入输出接口可以包括显示器、键盘、鼠标、以及USB接口,用于输入输出数据;电源用于为电子设备提供电能。
本领域技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种BIM模型到3DTiles文件的转换方法,其特征在于,包括:
S100将BIM模型的数据分为几何数据集合及非几何数据集合;
S200对几何数据集合,基于构件划分,建立构件的集合;
将构件识别为外部构件或内部构件,并分别建立外部构件集合和内部构件集合;
同时,将构件识别为可实例化表示构件或不可实例化表示构件,并分别建立可实例化表示集合和不可实例化表示集合;
其中,所述S200中,建立外部构件集合和内部构件集合的方法包括如下步骤:
S211对构件进行构件ID编码;
S212将构件ID编码转换为R、G、B三个分量的格式;
S213利用OpenGL,前、后、左、右、上、下六个方向分别以正交投影渲染构件集合,得到所有的外部构件,并建立外部构件集合和内部构件集合;
所述S200中,建立可实例化表示集合和不可实例化表示集合的方法包括如下步骤:
S221设定构件的MD5特征码计算方式;
S222根据所述MD5特征码计算方式,对构件集合的构件进行计算;
S223MD5特征码重复的构件为实例化绘制构件,根据所有实例化绘制构件建立可实例化表示集合;
MD5特征码不重复的构件为正常绘制构件,根据所有正常绘制构件建立不可实例化表示集合;
S300基于外部构件集合、内部构件集合、可实例化表示集合和不可实例化表示集合,分别以ADD方式构造3DTiles文件中的tiles,形成最终的3DTiles的tileset.json文件;
所述S300中,分别以ADD方式构造3DTiles文件中的tiles,形成最终的3DTiles的tileset.json文件,包括:
首先将内\外部构件集合分为实例化绘制构件与正常绘制构件;每一个实例化绘制构件转一个3DTiles的i3dm模型文件,正常绘制构件需基于其包围盒构建空间结构树,将空间结构树根节点内所有构建转成一个3DTiles的b3dm模型文件,同时合并上述b3dm与i3dm文件为3DTiles的cmpt模型文件,将此cmpt文件设置3DTile节点内容模型;空间结构树子节点转成对应3DTiles节点的子节点外部链接json文件。
2.根据权利要求1所述的一种BIM模型到3DTiles文件的转换方法,其特征在于,所述S100中,所述几何数据集合为表示构件几何形状及材质的集合。
3.根据权利要求2所述的一种BIM模型到3DTiles文件的转换方法,其特征在于,所述S100中,所述非几何数据集合为包含构件的层级结构及构件的属性数据的集合。
4.根据权利要求1所述的一种BIM模型到3DTiles文件的转换方法,其特征在于,所述S300中,在组织3DTiles文件时,以“ADD”方式构建HLOD层级结构,并将外部构件与内部构件以外部链接的方式设为3DTiles根节点的两个子节点,其中内部构件子节点设置viewerRequestVolume的值。
5.根据权利要求4所述的一种BIM模型到3DTiles文件的转换方法,其特征在于,所述S300中,viewerRequestVolume的大小为内部构件集合包围盒的1.5倍至2.0倍。
6.一种电子设备,其特征在于,包括至少一个处理器,以及与所述至少一个处理器通信连接的存储器;所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至5中任一项所述的转换方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110196869.8A CN112989458B (zh) | 2021-02-22 | 2021-02-22 | 一种BIM模型到3DTiles文件的转换方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110196869.8A CN112989458B (zh) | 2021-02-22 | 2021-02-22 | 一种BIM模型到3DTiles文件的转换方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112989458A CN112989458A (zh) | 2021-06-18 |
CN112989458B true CN112989458B (zh) | 2022-09-06 |
Family
ID=76349292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110196869.8A Active CN112989458B (zh) | 2021-02-22 | 2021-02-22 | 一种BIM模型到3DTiles文件的转换方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112989458B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110232523A (zh) * | 2019-06-14 | 2019-09-13 | 上海同筑信息科技有限公司 | 一种bim模型轻量化方法 |
CN111666433A (zh) * | 2020-04-30 | 2020-09-15 | 中铁第一勘察设计院集团有限公司 | 铁路四电工程BIM模型Web轻量化方法 |
CN112035433A (zh) * | 2020-08-12 | 2020-12-04 | 华设设计集团股份有限公司 | 将bim模型转为支持大体量分级加载gis模型的方法 |
CN112084556A (zh) * | 2020-08-25 | 2020-12-15 | 天津大学 | 一种海量数据bim模型的轻量化显示方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110309458B (zh) * | 2018-03-30 | 2021-03-30 | 北京东晨工元科技发展有限公司 | 基于WebGL的BIM模型显示及渲染方法 |
CN110659317A (zh) * | 2019-08-14 | 2020-01-07 | 珠海市规划设计研究院 | 一种bim数据轻量化方法 |
CN112199750B (zh) * | 2020-10-27 | 2024-03-15 | 中铁第五勘察设计院集团有限公司 | 轨道交通建设管理的多格式集成方法及gis平台 |
CN112287057A (zh) * | 2020-11-05 | 2021-01-29 | 江苏燕宁工程科技集团有限公司 | 基于bim和gis的工程项目信息的查询处理方法和系统 |
CN112348953B (zh) * | 2020-11-06 | 2022-03-04 | 中铁第一勘察设计院集团有限公司 | 跨越地理分带的铁路bim模型处理方法 |
-
2021
- 2021-02-22 CN CN202110196869.8A patent/CN112989458B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110232523A (zh) * | 2019-06-14 | 2019-09-13 | 上海同筑信息科技有限公司 | 一种bim模型轻量化方法 |
CN111666433A (zh) * | 2020-04-30 | 2020-09-15 | 中铁第一勘察设计院集团有限公司 | 铁路四电工程BIM模型Web轻量化方法 |
CN112035433A (zh) * | 2020-08-12 | 2020-12-04 | 华设设计集团股份有限公司 | 将bim模型转为支持大体量分级加载gis模型的方法 |
CN112084556A (zh) * | 2020-08-25 | 2020-12-15 | 天津大学 | 一种海量数据bim模型的轻量化显示方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112989458A (zh) | 2021-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110245368B (zh) | 一种bim数据的结构化处理与存储方法 | |
CN111008422B (zh) | 一种建筑物实景地图制作方法及系统 | |
CN108648269B (zh) | 三维建筑物模型的单体化方法和系统 | |
CN113158288B (zh) | 一种基于构件复用与重装配的信息模型几何轻量化方法 | |
CN110751696B (zh) | 将BIM模型数据转化为glTF数据的方法、装置、设备及介质 | |
US20170015057A1 (en) | Preparing a Polygon Mesh for Printing | |
CN107273543B (zh) | 一种dgn数据格式的转换方法 | |
KR102620835B1 (ko) | 3D 기하 객체 정보를 이용한 CityGML 기반의 빌딩 객체 정보 생성 방법, 빌딩 객체 정보 생성 시스템, 이를 위한 컴퓨터 프로그램 | |
CN112633657A (zh) | 一种施工质量管理方法、装置、设备及存储介质 | |
KR20030073424A (ko) | 렌더링시스템, 렌더링방법 및 그 기록매체 | |
CN109859318A (zh) | 面向安全生产的三维模型制作加载显示系统及方法 | |
CN115659445A (zh) | 一种基于Open Cascade的CAD模型在网页轻量化渲染显示的方法 | |
CN113724401A (zh) | 一种三维模型切割方法、装置、计算机设备和存储介质 | |
CN111339599A (zh) | 一种bim模型到gis模型的转换方法 | |
CN112785696A (zh) | 基于游戏引擎和倾斜摄影数据的三维实景模型生成方法 | |
CN114169055A (zh) | 使bim模型轻量化的方法及系统 | |
CN112131626B (zh) | 一种面向UnrealEngine引擎的CAD模型几何特征交互方法 | |
CN111915720B (zh) | 一种建筑物Mesh模型到CityGML模型的自动转换方法 | |
CN112989458B (zh) | 一种BIM模型到3DTiles文件的转换方法 | |
CN114633850B (zh) | 一种船舶结构有限元模型虚拟可视化重构方法 | |
CN113434514B (zh) | 一种海上油气田点云模型的体素化索引和输出方法 | |
CN116152451A (zh) | 多维参数化城市信息模型构建方法、系统及计算机设备 | |
KR102143450B1 (ko) | Vr 모델 변환 시스템 및 이를 이용한 vr 모델 변환 방법 | |
CN112308975A (zh) | 用于三维轻量化引擎的rvm二进制模型解析方法及系统 | |
Chen et al. | Research on 3D modeling in scene simulation based on Creator and 3dsmax |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |