IFC是用EXPRESS语言来描述的一种数据格式

IFC的物理文件
为了数据交换的目的,STEP标准Prat 21规定了正文文件的结构,认为一个STEP文件或一个Part 21文件包括两端:头段和数据段。
IFC文件砼STEP文件一样,也包括两段:
头段和数据段。

头段
头段给出关于文件的种类和作者的信息。在每一个IFC交换文件中头段必须出现。该段以关键字"HEADER"开始,并且以"ENDSEC"结束。
在每一个交换文件结构中要规定头段实体,并且每一个实体要求有一个实例出现。
头段实体有文件描述(file_desctiption)、文件名(file_name)、文件模式(file_schema),并且应该按这一顺序出现。
HEADER;

/******************************************************************************************
* STEP Physical File produced by: The EXPRESS Data Manager Version 5.02.0100.07 : 28 Aug 2013
* Module: EDMstepFileFactory/EDMstandAlone
* Creation date: Thu Jan 05 17:42:05 2017
* Host: DESKTOP-OOLN4SQ
* Database: C:\Users\new\AppData\Local\Temp\{521BDB6B-99F8-4618-93B8-0BB3A41B594B}\ifc
* Database version: 5507
* Database creation date: Thu Jan 05 17:42:05 2017
* Schema: IFC2X3
* Model: DataRepository.ifc
* Model creation date: Thu Jan 05 17:42:05 2017
* Header model: DataRepository.ifc_HeaderModel
* Header model creation date: Thu Jan 05 17:42:05 2017
* EDMuser: sdai-user
* EDMgroup: sdai-group
* License ID and type: 5605 : Permanent license. Expiry date:
* EDMstepFileFactory options: 020000
******************************************************************************************/
FILE_DESCRIPTION(('ViewDefinition [CoordinationView]'),'2;1');
FILE_NAME('\X2\987976EE7F1653F7\X0\','2017-01-05T17:42:05',(''),(''),'The EXPRESS Data Manager Version 5.02.0100.07 : 28 Aug 2013','20140606_1530(x64) - Exporter 2015.0.2014.0606 - Default UI','');
FILE_SCHEMA(('IFC2X3'));
ENDSEC;

数据段
数据段包括要被交换结构传送的产品数据。每一个IFC文件都应该有数据段。该段以关键字"DATA"开始,并且以"ENDSEC"结束。
实体实例表示成下列形式
#<integer value> = <entity name> (<attribute values>);

DATA;
#1= IFCORGANIZATION($,'Autodesk Revit 2015 (CHS)',$,$,$);
#5= IFCAPPLICATION(#1,'2015','Autodesk Revit 2015 (CHS)','Revit');
#6= IFCCARTESIANPOINT((0.,0.,0.));
#9= IFCCARTESIANPOINT((0.,0.));
.............
#1046= IFCRELDEFINESBYPROPERTIES('2ebMF7g_D7GROI1TdA8DIo',#41,$,$,(#119),#964);
#1049= IFCRELDEFINESBYPROPERTIES('0thicEHmb6igK7KW0kOvNB',#41,$,$,(#119),#966);
#1052= IFCRELCONNECTSPATHELEMENTS('1$n37kAC9D$f5LO0MCJ5ic',#41,$,$,$,#184,#705,(),(),.ATEND.,.ATSTART.);
#1057= IFCRELCONNECTSPATHELEMENTS('2EttXPvKn8qP4r_g1CWDVe',#41,$,$,$,#184,#776,(),(),.ATSTART.,.ATEND.);
#1077= IFCPRESENTATIONLAYERASSIGNMENT('A-WALL-____-OTLN',$,(#148,#177,#474,#494,#546,#566,#617,#639,#690,#701,#754,#772,#825,#843),$);
ENDSEC;

EXPRESS语言简介
EXPRESS语言是由STEP(Standard for the Exchange of Product Model Data)开发的概念性语言,STEP是计算机可读的用于交换和描述产品制造信息的标准,
正式代号为ISO 10303 EXPRESS是用于面向对象的信息描述语言,处于STEP中基础与核心的地位。它将IFC模型构描述为:规范的类,与类相关联的属性,类的约束,
以及类与其他约束之间的关系。然而,EXPRESS语言仅适合软件的读写,在人工读取上存在一定的困难。因此,EXPRESS-G视图以图表式的表达被发展起来,并得到了普遍应用。

IFC是什么的更多相关文章

  1. 浅析CSS中的BFC和IFC

    1. 为什么会有BFC和IFC 首先要先了解两个概念:Box和formatting context: Box:CSS渲染的时候是以Box作为渲染的基本单位.Box的类型由元素的类型和display属性 ...

  2. IFC格式简介

    IFC是一个数据交换标准, 用于不同系统交换和共享数据.当需要多个软件协同完成任务时, 不同系统之间就会出现数据交换和共享的需求.这时, 工程人员都希望能将工作成果(这里就是工程数据), 从一个软件完 ...

  3. 在网页布局中合理使用inline formating context(IFC)

    引子:给大家出一个小小的考题,如何使用css来实现类似下面的在指定区域内,内容自适应的垂直居中.

  4. CSS魔法堂:重新认识Box Model、IFC、BFC和Collapsing margins

    前言   盒子模型作为CSS基础中的基础,曾一度以为掌握了IE和W3C标准下的块级盒子模型即可,但近日在学习行级盒子模型时发现原来当初是如此幼稚可笑.本文尝试全面叙述块级.行级盒子模型的特性.作为近日 ...

  5. IFC

    IFC是设计师使用的软件,然后存储的格式. 这个适用于精细的设计.

  6. [BIM]BIM中IFC介绍

    ifc是干什么的,看下图 ifc架构图 下文转自:http://www.bimcn.org/cjwt/201506053789.html IFC目前是国际通用的BIM标准,现在很多BIM软件都采用其作 ...

  7. CSS规范之BFC & IFC

    元素是文档结构的基础,在CSS中,每个元素生成了一个包含了元素内容的框(box,也译为"盒子").但是不同的元素显示的方式会有所不同,例如<div>和<span& ...

  8. 重新认识Box Model、IFC、BFC和Collapsing margins

    尊重原创,转载自: http://www.cnblogs.com/fsjohnhuang/p/5259121.html 肥子John^_^ 前言   盒子模型作为CSS基础中的基础,曾一度以为掌握了I ...

  9. css3中的BFC,IFC,GFC和FFC(转载)

    作者原文网址:http://www.cnblogs.com/dingyufenglian/p/4845477.html   What‘s FC? 一定不是KFC,FC的全称是:Formatting C ...

随机推荐

  1. LINQ to SQL语句(20)之存储过程

    在我们编写程序中,往往需要一些存储过程,在LINQ to SQL中怎么使用呢?也许比原来的更简单些.下面我们以NORTHWND.MDF数据库中自带的几个存储过程来理解一下. 1.标量返回 在数据库中, ...

  2. Angularjs环境搭建

    Angularjs架构搭建      1.搭建Angularjs项目           1)在package.json中配置如下,然后 npm install下载包     {   "na ...

  3. 如何在虚拟机安装桌面Ubuntu

    本篇仅为作业... 实验课程:Linux 实验机器:联想y410p 指导老师:刘臣奇 实验时间:2016年10月12日 学生学号:140815 姓名:杨文乾 一.新建一个虚拟机,按照之前建立虚拟机的步 ...

  4. C语言实现2个大数相加。

    #include<stdio.h>#include<string.h>int main(){    char s1[100],s2[100];    int num1[31], ...

  5. Android事件总线

    Android中Activity.Service.Fragment之间的相互通信比较麻烦,主要有以下一些方法: (1)使用广播,发送者发出广播,接收者接收广播后进行处理: (2)使用Handler和M ...

  6. 数据结构:栈 顺序表方法和单链表方法(python版)

    #!/usr/bin/env python # -*- coding:utf-8 -*- class StackUnderflow(ValueError): pass #链表节点 class Node ...

  7. 推荐书单(转自GITHUB)

    Skip to content PersonalOpen sourceBusinessExplore Sign upSign in PricingBlogSupport   This reposito ...

  8. 应用SuperIO(SIO)和开源跨平台物联网框架ServerSuperIO(SSIO)构建系统的整体方案

    SSIO的更新 在SSIO上增加了UDP通讯方式,可以到Github上下载源代码.在原来的项目中,远端的设备与中心站的数据交互并没有使用过UDP方式.这种短连接的通讯链路,不容易维护,主要体现在:(1 ...

  9. GO 1.5 代码编译安装 [centos7 64位]

    2015年8月,Go 1.5 正式发布,这是 Go 的第六个重要版本. 此版本包括大量重大改进,编译工具链从 C 转换到 Go,从 Go 代码库中完全移除 C 代码.完完全全重新设计了垃圾收集器,减少 ...

  10. java web之个人通讯录系统

    前天下了第一场雪,专业课老师给我们布置了一个期末小作业,真的感觉到寒假就要来临了.这个学期没过多久就要结束了.总结这学期,感觉还是有不少收获的.完成了当初许下的诺言,现在也越来越喜欢软件这个行业了,虽 ...