工业基础类IFC—概述

简介: 工业基础类IFC—概述

01 概要

工业基础类,即IFC标准,是由国际协同工作联盟IAI组织(现已更名为buildingSMART)于1994年制定的,当时这个组织的牵头者正是工业软件的行业巨头Autodesk,然而昔日的创始者却在格式兼容性上受到业界的诟病,想了解更多利益纠纷可移步由BIMBOX出品的30年BIM市场争夺战:八卦吃瓜背后,反思中国的出路。回到格式本身,它是一个可以通过计算机进行处理的建筑数据表示和交换标准,其目标是为建筑行业提供一个不依赖于任何具体系统的,适合于描述贯穿整个建筑项目全生命周期内产品数据的中性数据标准,应用于建筑物全生命周期内的各个阶段内以及各阶段之间的信息传递和共享。正如图1所示,IFC文件包含构造物所有的几何和属性信息,以此作为传递信息的载体,可以兼容各种BIM软件系统平台,实现不同软件供应商、不同阶段的BIM系统之间的信息传递和共享。


20210505213216707.png


02 发展历程


自二十世纪九十年代起,buildingSMART组织便已经开始IFC标准的制定工作,并于1996年底发布了第一个稳定的版本,即IFC1.0。在此之后,为明确表达所有工程数据之关系,IFC标准仍在不断更新和完善。buildingSMART组织几乎每隔1-2年都会对IFC标准进行一次修订和更新,目前最新版本为 IFC4.3 RC2,而IFC2×3版本是目前大多数市面上的BIM软件所支持的版本。图2中整理了截止2019年底IFC标准版本迭代的历程,耗费23年时间发布共16个更新版本。经过多年发展,其中大多数版本已经被废止。值得关注的是,buildingSMART组织近年来致力于扩展对基础设施领域的构造物(包括铁路、桥梁、公路、水利水电、通信设施等)的数据化描述研究。


c1e290ea1778ee10dc9177a556a38cdf.png


如图3所示,自IFC2×版本发布以来,IFC标准中的实体总数量呈明显的上升趋势,这说明新的概念不断被添加进来,IFC标准逐步细化了对建筑信息的表达。但是随着实体数量增加,IFC标准的结构复杂度也相应地有所提高,这意味着了解IFC标准的结构体系和内容所需的工作量也在加大。在更新迭代过程中,IFC标准存在两次大幅度地增长,一次是2× ADD1~2×2,另一次则是2×3 TC1~4,主要原因是两次的更新均涉及覆盖范围上的变动,前者引入了许多扩展以更好地支持建筑服务和结构领域,例如用于结构分析的IFC子模型以及对电气、管道和建筑控制定义的扩展,后者则扩展了构件类型、属性表达和过程定义等。


同时,从图中也可以发现IFC4版本之前,根实体(即不继承于其他任何实体的初始实体)的数量与实体总数量呈现相同趋势,而在IFC4版本时出现骤跌,并在之后的版本的中保持平稳,这是buildingSMART组织在试图减少继承路径,从而精简IFC标准的结构体系,便于用户理解和使用。


一个完整的IFC数据模型由类型定义、函数、规则和属性集组成。其中,类型定义是IFC模型中不可或缺组成部分,它包括了定义类型、枚举类型、选择类型和实体类型,图4为除实体类型外的类型定义数量变化趋势图,以IFC4版本为分割点将变化趋势划分为两个阶段。前一阶段的定义类型、枚举类型和选择类型的数量曲线均呈显著的上升趋势,尤其是在2× ADD1~2×2阶段和2×3 TC1~4阶段,表明该阶段IFC标准发展迅猛,类型定义得到了快速地扩充;后一阶段的定义类型、枚举类型和选择类型的数量基本趋于稳定,有且仅有个位数的数量增长,说明在IFC4版本之后,IFC标准的类型定义范畴基本固定,buildingSMART组织更加注重IFC结构体系的简洁性和易用性。


20210505213232815.png


图3


20210505213238772.png


图4


参考资料

[1] buildingSMART[EB/OL]. https://www.buildingsmart.org/, 2020.


[2] What is openBIM[EB/OL]. https://www.buildingsmart.org/about/what-is-openbim/, 2020.


[3] Industry Foundation Classes Release 4 (IFC4)[EB/OL]. https://standards.buildingsmart.org/IFC/RELEASE/IFC4/FINAL/HTML/, 2020.


[4] IFC Specifications Database[EB/OL]. https://technical.buildingsmart.org/standards/ifc/ifc-schema-specifications/, 2020.


[5] 基于IFC的桥梁施工监控数据集成与可视化研究


相关文章
|
机器学习/深度学习 人工智能 自然语言处理
大模型开发:解释强化学习以及它与监督学习的不同之处。
强化学习(RL)是机器学习的一种,通过智能体与环境交互学习最优策略,以获取最大回报,常用于动态环境如游戏和机器人。与之不同,监督学习(SL)使用有标签的训练数据来预测新数据,适用于如图像分类等稳定问题。两者关键区别在于学习方式和应用场景:RL侧重环境交互和策略优化,适合未知动态环境;SL依赖已知标签数据,适合标签明确的任务。在大模型开发中,两者各有优势,并不断融合创新,推动人工智能发展。
1791 2
|
算法 Python
python:判断一个数是否为质数
python:判断一个数是否为质数
|
11月前
|
编解码 缓存 监控
《首屏加载优化手册:Vue3+Element Plus项目提速的技术细节》
本文记录了Vue3+Element Plus开发的企业内部管理系统首屏加载优化实践。该系统因组件全量引入、图片未优化、接口调用无序,首屏加载达6秒,用户投诉频发。作者团队用Chrome DevTools定位瓶颈后,以“分阶段、抓核心”策略优化:代码层面拆分资源、按需引入组件;静态资源转WebP并适配分辨率;调整接口调用顺序,延迟非核心请求,还添加骨架屏优化体验。优化后首屏加载稳定在1.8-2.2秒,系统使用率提升12%。作者强调优化需贴合用户体验,建立监控体系,避免盲目追求技术指标。
629 6
|
算法 Java API
2025 版 Java 零基础入门到精通实操指南
这篇文章为零基础学习者提供了Java入门的全面指南。首先介绍了Java的特点和用途,然后详细讲解了环境搭建步骤(JDK安装、环境变量配置和IDE选择),并以"Hello World"程序为例演示了开发流程。文章还系统性地讲解了Java核心语法,包括变量与数据类型、运算符、控制流语句、数组和方法等基础知识,以及面向对象编程和异常处理的概念。通过代码示例帮助读者理解和实践,最后建议掌握基础后可进一步学习Java高级特性和框架。文中还提供了代码获取方式和关注入口,适合Java初学者系统学习。
1398 2
|
Linux
linux syscall和int 80的区别
通过以上内容,希望您能更清晰地理解 `int 0x80` 和 `syscall` 的区别及其在不同系统架构中的应用。
1234 99
|
人工智能 算法 搜索推荐
CoAT: 基于蒙特卡洛树搜索和关联记忆的大模型推理能力优化框架
研究者提出了一种新的关联思维链(CoAT)方法,通过整合蒙特卡洛树搜索(MCTS)和关联记忆机制,提升大语言模型(LLMs)的推理能力。CoAT框架优化了MCTS算法,增强了结构化推理和动态知识整合,适用于复杂推理、多跳问答和代码生成等任务。实验结果显示,CoAT在精确匹配和F1分数上表现优异,超越了多个基线模型。然而,该方法在计算资源消耗和实时推理速度方面仍有改进空间。
1545 5
CoAT: 基于蒙特卡洛树搜索和关联记忆的大模型推理能力优化框架
|
移动开发 前端开发 JavaScript
开源即时通讯IM框架MobileIMSDK的H5端技术概览
开源即时通讯IM框架MobileIMSDK的H5端技术概览
735 2
开源即时通讯IM框架MobileIMSDK的H5端技术概览
|
机器学习/深度学习 算法
基于VMD-SSA-LSTM的多维时序光伏功率预测
基于VMD-SSA-LSTM的多维时序光伏功率预测
|
存储 SQL 人工智能
从 CodeGemma 到 CodeQwen1.5:开源编程大模型百家争鸣
笔者最近刚刚试用完 CodeGemma ,准备分享我的心得时,通义千问的 CodeQwen1.5 就也悄然发布。本文主要介绍 CodeQwen1.5 这款开源编程大模型,并展示如何在 VSCode 中使用它帮你提升编程体验。
2806 0
从 CodeGemma 到 CodeQwen1.5:开源编程大模型百家争鸣
|
Java 开发工具 数据库
简单解说:SDK是什么以及它为你做了什么?
简单解说:SDK是什么以及它为你做了什么?
4508 0