原文发布时间:2014-01-03
作者:小C
1、IFC标准提出
IFC标准是由国际协同工作联盟IAI(International Alliance for Interoperability)为建筑行业发布的建筑产品数据表达标准。目前, FME2013 IFC读模块支持2x,2×2,和2×3版本的IFC规范。
2、IFC发展史
IFC版本可以看做是对于未来五年中开放型BIM的一个基础平台,自1997年1月IAI发布IFC1.0以来,IFC经历了6个版本的更替。自从2003年(最初发布IFC2X2版本)以来第一个重要的改善,经历了IFC历史上最长周期的开发以及目标成为一个完整的ISO标准,推出的IFC2X4版本被认为是一个对于Open BIM协同设计跨时代的版本。
IFC发展历程如下图所示:
3、IFC标准的数据定义方式
IFC 标准本质上是建筑物和建筑工程数据的定义,反映现实世界中的对象。它采用了一种面向对象的、规范化的数据描述语言EXPRESS 语言作为数据描述语言,定义所有用到的数据。EXPRESS 语言通过一系列的说明来进行描述,这些说明主要包括类型说明(Type)、实体说明(Entity)、规则说明(Rule)、函数说明(Function)与过程说明(Procedure)。EXPRESS 语言中语言的定义和对象描述主要靠实体说明 (Entity) 来实现,在IFC2x3中共定义了653 个实体类型。一个实体说明定义了一种对象的数据类型和它的表示符号, 它是对现实世界中一种对象的共同性质的描述。对象的特性在实体定义中则使用类的属性和规则来表达。实体的属性可以是EXPRESS 中的简单数据类型(数字、字符串、布尔变量等),更多的是其它实体对象。与其他面向对象语言一样,EXPRESS 语言同样可以描述实体之间的继承派生关系。可以通过定义一个实体是另一个实体的子类(Subtype)或超类(Supertype)建立实体之间的继承关系,子类可以继承超类的属性。在EXPRESS 语言支持多重继承,一个子类实体可以同时拥有多个超类,但是, 在IFC 标准并没有使用多重继承,所有的实体类型最多只有一个直接超类。
4、IFC模型的结构
IFC模型可以划分为四个功能层次:即资源层(Resource Layer)、核心层(Core Layer)、交互层(Interoperability Layer)和领域层(Domain Layer)。每个层次都包含一些信息描述模块,并且模块间遵守 “重力原则”:每个层次只能引用同层次和下层的信息资源,而不能引用上层资源。这样上层资源变动时,下层资源不受影响,保证信息描述的稳定。
4.1、资源层
IfcUtilityResourc, IfcMeasureResourc,IfcGeometryResource,IfcPropertyTypeResource和 IfcPropertyResource。IfcUtilityResource 包括一些项目管理使用的概念类: 标识符、所有权、历史记录、注册表。IfcMeasureResource采用ISO 10303 第41部分度量类,列出数量的单位和度量标准。IfcGeometryResource 规定了产品形状的几何和拓扑描述资源,这些资源部分由ISO 10303 第42部分( 集成通用资源:几何与拓扑表达 )改写过来( IAI 1997b:4-40 )。IfcPropertyTypeResource 定义了对象和关系的各种各样的特性,它由人员、分类等级、造价、材料、日期和时间等类组成。子类“材料”是各种各样的材料表。这些类是通用的,而不是建筑专门的类,它们的作用是作为一种定义高级层里的实体属性的资源。
4.2、核心层
核心层分别由核心( Kernel )和核心扩展(Core Extensions )两部分组成。IFC Kernel提供了IFC模型所要求的所有基本概念,它是一种为所有模型扩展提供平台的重要模型 (IAI 1997a: 6) ,这些构造不是AEC/FM 特有的,核心层扩展也一样。 Kernel类有IfcObject,IfcRelationship和IfcModelingAid。
核心扩展层包含Kernel类的扩展类:IfcProduct,IfcProcess,IfcDocument和IfcModelingAid。 核心扩展是为建筑工业和设备制造工业领域在Kernel里定义的类的特例,Ifc Product-Extension 定义如元素、空间、场地、建筑和建筑楼层等概念 (ibid: 8-111)。 IfcProcessExtension有子类,它是为了掌握关于生产产品的工作信息,在这些类里尽可能定义工作任务和资源。子类IfcDocumentExtension是在建设建筑中使用的典型文件类型的信息类容的详细说明,目前,只包含造价表。IfcModelingAidExtension包含帮助项目模型开发的子类,如IfcDesignGrid和IfcReferencePoint。
4.3、协作层
这层包含了在许多建筑施工和设备管理应用软件之间使用和共享的实体类。因此,Shared Building Elements 模块有梁、柱、墙、门等实体定义;Shared Building Services Elements 模块有流体、流体控制、流体属性、声音属性等实体定义;Shared Facilities Elements 模块有资产、所有者和设备类型等实体定义。在这一层中定义了大多数普通建筑实体。
4.4、领域层
顾名思义,包含了为独立的专业领域的概念定义的实体,例如建筑、结构工程、设备管理等。它是
IFC
模型的最高级别层。它包括建筑的空间顺序,结构工程的基础、桩、板实体,采暖和通风的加热炉、空调等备注;在
IFC
模型的结构图中
,绿色阴影表示的模块是
ISO/PAS 16739
的一部分,这些模型已经达到一定的质量控制标准且经
ISO
鉴定合格。