ifc是干什么的,看下图

ifc架构图

下文转自:http://www.bimcn.org/cjwt/201506053789.html

IFC目前是国际通用的BIM标准,现在很多BIM软件都采用其作为数据交换的标准,之前笔者也介绍过相关文章,今天笔者要给大家介绍的是BIM标准IFC的四个层级介绍
       1. 资源层
       资源层为IFC 架构之最低层级。资源层所定义的类别(classes),为一般性的低阶观念与对象,可以不依赖其他类别而独立存在。在IFC Release2.0 中所制定的资源层纲目包含测量资料(measure)、辅助资料(utility)、几何资料(geometry)、对象性质(property)、以及对象性质型别(property type)。在Release 2.0 中,则针对 Release 1.5 的内容进行部份的重组,并进行部分扩充。
       2. 核心层
       核心层为IFC 架构的第二层级。核心层所定义的类别可被界面层与领域/应用层的所有类别所参照(referenced)与特殊化(specialized)。核心层提供了IFC 对象模型的基本结构并且定义了大部分的抽象观念。核心层本身包含了两阶抽象内容:基本核心(The Kernel)和核心延伸(Core Extensions):
       (1)基本核心
       基本核心提供了IFC 对象模型所需的所有基本观念,并且定义了对象模型的结构与组成成分。基本核心所定义的抽象观念为高层级所必须用到的。基本核心并且包含了关于对象关系、型别定义、属性及规则的基本观念。
       (2)核心延伸
       核心延伸的内容包含基本核心的延伸观念或特殊观念,提供营建/设施管理相关产业使用所需。每一个核心延伸为基本核心所定义类别之特殊化。
       3. 界面层
       界面层定义了不同的领域/应用层模型之间所共享的观念或对象模块。接口层的纲目类别包含了共享建筑组件(shared building elements)以及共享建筑服务组件(shared building service elements)。
       4. 领域/应用层
       领域/应用层为IFC架构的最高层级,提供了营建和设施管理领域所需要的对象模型。目前IFC所定义的领域模型(Domain Models)包含建筑Architecture)、设施管理(Facility Management)、估价(Cost Estimating)、以及机电设备(HVAC)。
       IFC之架构遵循阶梯原则(ladder principle):每一个层级的类别可参照(reference)同一层级或较低层级的其他类别,但不能参照较高层级的类别。阶梯原则的内容如下:
       1. 资源类别(Resource Classes) 只能参照或使用其他资源类别。
       2. 核心类别(Core Classes)能参照其他核心类别,以及无限制地参照或使用(use)资源层的资源类别。核心类别不能参照或使用接口层或领域/应用层的类别。
       3. 核心层本身亦遵循阶梯原则。因此,基本核心类别(Kernel Classes)能被核心延伸的类别所参照或使用,反之则否。基本核心类别不能参照核心延伸类别。
       4. 接口层的类别能参照任何核心层或资源层的类别,但不能参照领域/应用层的类别。
       5. 领域/应用层的类别能够参照界面层、核心层以及资源层的任何类别。
       关于BIM标准IFC的四个层级介绍笔者就说这么多,由于目前国内的BIM标准还在编制当中,发布日期尚不明确,所以现在还是都以IFC等国际标准为主,但是就我国建筑业的特性,这些国际标准在国内应用时经常出现水土不服的现象,所以适合我国国情的BIM标准的推出,将会对推动BIM发展起到即为重要的作用。

注:

1、IFC官方文档 http://www.buildingsmart-tech.org/ifc/IFC2x3/TC1/html/
2、IFC解析库 IFC-SDK官网 https://joinup.ec.europa.eu/software/ifc-sdk/description
3、IFCplusplus 另一个IFC解析库与OSG集合 http://ifcplusplus.com/

IFC SDK
有着详细的示例代码
库相对来说比较轻量级(足够满足项目需要)

IfcPlusPlus
相对比较笨重与OGS结合的比较深(附加功能太多) 不过其中的从IFC解析数据用OSG渲染的例子可以参考

感谢:今晚打老虎 的整理

四川某学校的论文:

IFC架构及模型构成分析

1) IFC 标准资源层( IFC-Resource Layer) :作为整个体系 的基本层,IFC 任意层都可引用资源层中的实体。该层主要定义了工程项目的通用信息,这些信息独立于具体建筑,没有整体结构,是分散的基础信息。该层核心内容主要包括属 性资源( Property Resource) 、表现资源( Representation Resource) 、结构资源( Structure Resource) 。这些实体资源主要用于上层实体资源的定义,以显示上层实体的属性。
2) IFC 标准核心层( IFC-Core Layer) : 该层之中主要定 义了产品、过程、控制等相关信息,主要作用是将下层分散的 基础信息组织起来,形成 IFC 模型的基本结构,然后用以描 述现实世界中的实物以及抽象的流程。在整个体系之中起 到了承上启下的作用。该层提炼定义了适用于整个建筑行等: IFC 架构及模型构成分析业的抽象概念,比如 IFCProduct 实体可以描述建筑项目的建 筑场地、建筑空间、建筑构件等。
3) IFC 标准共享层( IFC-Interoperability Layer) : 共享层 主要是服务于领域层,使各个领域间的信息能够交互,同时 细化系统的组成元素,具体的建筑构件如板( IFCSlab) 、柱 ( IFCColumn) 、梁( IFCBeam) 均在这一层被定义。
4) IFC 标准领域层( IFC-Domain Layer) : 作为 IFC 体系 架构的顶层,该层主要定义了面向各个专业领域的实体类 型。这些实体都面向各个专业领域具有特定的概念。比如 暖通领域( HVAC Domain) 的锅炉、管道等。

有个:何关培谈BIM的个人BBS可以看一下

http://blog.fang.com/25866228/10602651/articledetail.htm

里面提到ifc能支持的对象有:

一个对象代表在工程项目中要使用的某个“东西”的一个实例,IFC的发展目标是包含工程项目中要使用的所有“东西”,对象的范围包括:

a)实际构件或部件:例如门、窗、管道、阀门、量、灯具等

b)空间:例如房间、楼层、建筑、场地、其他外部空间等

c)在设计、施工和运营维护中进行的流程

d)参与的人和组织

e)对象之间存在的关系

下面几张图(图片来自于buildingSMART)是IFC对象的一些例子,可以给大家一个直观感觉:

最后要说明一点,IFC是给软件使用的,不是给人直接使用的,因此对于广大BIM用户(建筑信息创建者和使用者)来说,只要知道下面几件事情就可以了:

a)所有使用的BIM及相关软件除了各个软件专用的数据模型格式(文件格式)以外,还有一个基于对象的、公开的数据模型格式IFC;

b)当业务流程需要在不同软件之间进行信息交换或者信息需要长期保存的时候,如果两者的专用数据模型不能直接交换,那么两者之间通过IFC格式进行交换是其中的一个选择,如果考虑到需要这种交换的软件数量有几种、十几种、几十种甚至更多,那么IFC可能就会成为唯一的选择。

c)了解自己及其他项目成员正在使用的软件是否支持IFC以及支持的版本和程度。IFC对支持的软件有一个认证程序,下面是经过IFC认证的软件的一个清单(资料来源:buildingSMART)。

[BIM]BIM中IFC介绍的更多相关文章

  1. BIM数据格式中IFC的标准及格式

    传统工程数据往往零散且片段的储存在各个不同的地方,数据格式也有各种不同的形式互相搭配,最常见的有图形(施工图.大样图.断面图.流程图等).文字(各种说明文件).数字(各种统计.数量或价格数据),这些数 ...

  2. [BIM]BIM中IDM介绍

    参考:http://blog.fang.com/25866228/10613454/articledetail.htm IDM的全称是Information Delivery Manual,信息交付手 ...

  3. ios中框架介绍

    ios中框架介绍 参考博客: 参考文章:框架介绍 框架介绍 框架就是一个目录,一个目录包含了共享库,访问共享库里面的代码的头文件,和其他的图片和声音的资源文件.一个共享库定义的方法和函数可以被应用程序 ...

  4. Burp Suite Intruder中爆破模式介绍

    Burp Suite Intruder中爆破模式介绍 - Introduction to Burst Mode in Burp Suite Intruder 1.sniper模式  使用单一的Payl ...

  5. Django中ORM介绍和字段及字段参数 Object Relational Mapping(ORM)

    Django中ORM介绍和字段及字段参数   Object Relational Mapping(ORM) ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简 ...

  6. [转]C# 互操作性入门系列(一):C#中互操作性介绍

    传送门 C#互操作系列文章: C# 互操作性入门系列(一):C#中互操作性介绍 C# 互操作性入门系列(二):使用平台调用调用Win32 函数 C# 互操作性入门系列(三):平台调用中的数据封送处理 ...

  7. 6月20日 Django中ORM介绍和字段、字段参数、相关操作

    一.Django中ORM介绍和字段及字段参数 二.Django ORM 常用字段和参数 三.Django ORM执行原生SQL.在Python脚本中调用Django环境.Django终端打印SQL语句 ...

  8. [BIM]BIM中IFD介绍

    第三大支柱IFD - 确定交换的信息和你要的信息是同一个东西 IFD的全称是International Framework for Dictionaries,中文可以叫“国际字典框架”,和前两者IFC ...

  9. bim模型中所有IfcWallStandardCase构件

    ifc中的IfcWallStandardCase构件 //执行吊装 void startHoisting() { osg::Vec3f vec3f1 = index_node1->getBoun ...

随机推荐

  1. vmware 共享文件夹 win7 centos6

    1. 安装 vmware-tools 1). 右击虚拟机 -- 安装vmware-tools 2). 挂载 mnt /dev/cdrom /mnt 3). yum -y install gcc gcc ...

  2. configs for postgresql restart and postgresql reload

    -- configs requiring postgresql restart select name, setting, context from pg_settings where context ...

  3. Lintcode: Interval Sum II

    Given an integer array in the construct method, implement two methods query(start, end) and modify(i ...

  4. 转:python webdriver API 之鼠标事件

    前面例子中我们已经学习到可以用 click()来模拟鼠标的单击操作,而我们在实际的 web 产品测试中 发现,有关鼠标的操作,不单单只有单击,有时候还要和到右击,双击,拖动等操作,这些操作包含在Act ...

  5. table创建固定表头

    布局:两个div,上部内容将表头复制,高度固定,下部div内部将table设置为margin:-**px; 隐藏掉表头,下部div设置overflow,即可. 代码:

  6. POJ 3241 Object Clustering(Manhattan MST)

    题目链接:http://poj.org/problem?id=3241 Description We have N (N ≤ 10000) objects, and wish to classify ...

  7. MySQL 请选择合适的列! 转载(http://www.cnblogs.com/baochuan/archive/2012/05/23/2513224.html)

    点击图片,可查看大图.    介绍   情况:如果你的表结构设计不良或你的索引设计不佳,那么请你优化你的表结构设计和给予合适的索引,这样你的查询性能就能提高几个数量级.——数据越大,索引的价值越能体现 ...

  8. AP模块的发票过账后关联对应的凭证编号。

    --AP发票 SELECT GJH.NAME,GJH.LEDGER_ID,GJH.JE_CATEGORY, GJH.JE_SOURCE,XDL.SOURCE_DISTRIBUTION_TYPE, XT ...

  9. Java魔法堂:注释和注释模板 (转)

    http://www.cnblogs.com/fsjohnhuang/p/3988883.html 一.注释   1. 注释类型 [a]. 单行注释 // 单行注释 String type = &qu ...

  10. form 表单jquery验证插件使用

    第一部分:表单样式 <form action="#" method="post" id="regist">   <tabl ...