第一步骤和工具

文件夹你好墙迷你小例子(工具源代码分发)来编写一个简单的IFC文件,这个例子中的建筑构件是由基本的几何参数驱动和国际金融公司出口可根据某些选项进行定制。编码开源工具和代码,支持的编码和任意字符,并从IFC步骤物理文件结构夹IFC GUID开源工具和代码,支持的编码和任何字符的向和从IFC解码的解码夹串步骤物理文件结构

开发工具

文件夹IFC工具箱 - 由Thomas Liebich - 最后修改2009年1月27日的工具,下午1点52分列表支持IFC兼容的应用程序文件夹IFC开源的发展 - 由Thomas Liebich - 最后修改2009年8月20日下午7点18分集合可用的开放资源,以支持基于IFC互操作的软件开发。

你好墙

该HelloWall是一个小的应用程序生成导出有效IFC文件时,已经同意视图定义“协调性”,并提出了一个视图定义“演示文稿视图”下。最新版本包括的属性集出口(如“协调视图”和“演示视图”的一部分),和基地数量的出口为提出了“数量起飞插件观”的一部分。出口可通过一系列的形状参数和选项进行配置。提供了源代码,这样开发人员可以按照使用的算法。

示例应用程序已开发彼得Bonsma,TNO BOUW连接Onderground由托马斯Liebich和尼克·尼斯贝特,AEC3帮助,一直致力于味精的开发工作。未来的更新可能会提供直接在TNO BOUW网站,专注于IFC的发展,http://www.ifcbrowser.com/

实施例1 - 基本IFC结构具有壁,壁开口和一个包括窗口的出​​口,以及属性集出口和基数量时看到的页面中使用的IFC元件的在-深处解释见页的下载源,书面和对C提供++

字符串编码

国际金融公司交换格式“STEP物理文件”只允许用十进制值32从代码表ISO 8859-1为代表的126个字符。任何其他字符,像一些西方的字符,如德国的“变音符”,希腊或西里尔字母,字符或亚洲字符,已被交换作为一个字符串值的一部分之前进行编码。

“:实现方法:交换结构的纯文本编码 - - 产品数据表示和交换第21部分工业自动化系统与集成:”与编码和解码的规则在ISO10303-21定义。一个简短的总结和指导方针包括国际金融公司(IFC)实施指南(节“编码在STEP物理文件结构”中,可在这里>>>。

例如:下面的编码定义字符“鞋帮变音符号”A - 十六进制字符代码为XC4(十进制196)

'\ S \ D'D = X44的字符代码(十进制68)加入到X80(128)是X44 + X80(68 + 128)= XC4(196); 由于在ISO 8859-1定义它是默认的代码页,并且不需要\ P编码。'\ PA \ S \ D'与上述相同,但在开始的字符串\ PA \指令明确地定义了XC4的(196)的值从ISO 8859-1'\点¯x\ C4'字符码XC4采取在ISO 10646中的8位字符代码(前255个字符 - 也被称为“0行”)'\ X2 \ 00C4 \ X0 \'字符代码XC4作为ISO 10646的16位字符x00C4(统一)

为了支持字符串的编码和解码,球队魏玛包豪斯大学和豪赫蒂夫的OPENIFCTOOLS的开发商,已提取的代码从IFC开放的Java工具箱(顺便说一句,现在也可以作为.NET)和一个独立的工具可用附带的源代码。它是在以相同的方式作为整个OPENIFCTOOLS,根据在所表示的许可证http://creativecommons.org/licenses/by-nc-sa/3.0。

提供该计划包括:

OPENIFCTOOLS_StringConverter.jar - 二进制,在Windows环境下,可以通过启动下双击,如果的.jar与java.exe的OPENIFCTOOLS_StringConverter_src.jar相关 - 包含源代码OPENIFCTOOLS_StringConverter_doc.zip - 包含Javadoc文档

下载时您同意许可在这里表达>>>下载包http://creativecommons.org/licenses/by-nc-sa/3.0 下载整个IFC开放的Java工具箱在http://www.openifctools.com 注:buildingSMART提供了按原样的基础上代表其开发的内容,不对其内容负责。

example_encoding_russian图为演示应用程序的屏幕截图

编码使用来自俄语的例子。该编码使用ISO-8859-5(表包括西里尔)例如编码日本免责声明:日本文已经从一个网站,不知道它的意义复制。所以希望它使任何意义,并以任何方式不冒犯

编码使用从日语的例子。编码采用基于编码韩国免责声明ISO10646例如2个字节的字符:朝鲜文已经从一个网站,不知道它的意义复制。所以希望它使任何意义,并以任何方式不冒犯

编码使用来自韩国语的例子。编码采用基于ISO10646备注2字节字符:功能是封装在类stringconverter.StringConverter.java,演示应用程序包含在demo.StringEncodingDemo.java。

IFC GUID摘要

介绍

国际金融公司规范使用的对象实例遵循通用唯一标识符标准UUID与实施作为一个全局唯一标识符GUID的唯一标识符。生成的GUID是继发布的压缩功能压缩的交流目的。压缩的GUID被称为“IFC-GUID”在这里。

背景资料

全局唯一标识符(GUID)或通用唯一标识符(UUID)(根据ISO / IEC 11578规定:1996年信息技术 - 开放系统互连 - 远程过程调用(RPC)的ITU-T建议规范和最近点¯x 0.667 | ISO / IEC 9834-8:2005)提供了唯一地识别物体的方法。GUID生成算法已制定了大多数的软件开发框架环境和这些框架的持久性中存在的方法。

对于基于文件的数据交换,一种方法是设计来压缩这些GUID来节省空间的时候通过各种媒体物理交换IFC模型。鉴于每个IFC对象实例需要含有一个128位的数目的唯一标识符,基站64的字符编码​​被设计出来,如下所示:

IFC-GUID的Base-64字符编码映射:

0 1 2 3 4 5 6 0123456789012345678901234567890123456789012345678901234567890123 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_$ The resulting IFC-GUID is a fixed 22 character length string. Software implementations will need to use an algorithm that converts standard GUIDs to and from this encoding for compliance with the IFC specifications.

注意GUID的基于IFC文件交换压缩已引进早在1996年的版本IFC1.0。当时的数据文件被存储仍与1.44 MB容量的软盘,其中的每一个字节计数。一个GUID的今天,压缩将被认为是不必要的,但是由于它仍然是强制执行的向后兼容性问题。

IFC-GUID示例代码和applet

各种语言的几种算法已被提供给IFC开发社区由各自的作者用“原样”,并受以下列举的免责声明条款。适用性不保证由IAI提供,所有版权保持与各自的作者:

基于Microsoft CoCreateGuid C示例代码()方法由Peter Muigg和亚诺什人:Maros书面可以在这里下载>>> IfcGuid-C示例代码更新到C ++由亚诺什人:Maros >>> IfcGuid-C ++示例代码

由Jan Tulke和埃克陶舍尔编写的Java代码示例可以在这里下载>>> IfcGuid Java的样品由Jan Tulke和埃克陶舍尔编写的代码的Java小程序可以在这里下载>>> IfcGuid的Java小程序

由哈孔伯爵克劳森[蒂姆·奇普曼固定]这里>>> IfcGuid-C#示例代码杰里米Tammik转换C#更新以前的代码在这里看到与此相关的代码的开发翔实线程>>> HTTP://thebuildingcoder.typepad。 COM /博客/ 2010/06 / IFC-GUID的算法在c.html

IFC工具箱摘要

IFC开源和免费软件汇总

各种组织与合作buildingSMART支持的开放标准的想法,分享建筑信息模型 - 国际金融公司(IFC)。为了缓解发展中的一些已经选择提供开源的发展或其他免费提供资源给社会。以下页面列出这些事态发展,并希望承认这些贡献。

BIMServer

基于IFC建筑信息模型服务器开源BIMserver(简称:BIMserver),可以集中建设(或其他建筑相关的)项目的信息。其核心是基于开放标准的国际金融公司(IFC),因此知道如何处理IFC文件。该bimserver团队由TNO和TU埃因霍温都来自荷兰的支持。

    我们认为,在一个分散的行业,如AEC没有一个工具,它可以做的一切。我们相信,在集中的应用程序,做一件事情非常好。这就是为什么我们创建了一个平台,轻松构建聚焦的工具。我们下调打造利基应用快速和稳定的门槛。该BIMserver.org平台为程序员提供的BIM工具发展的开门红。
    BIMserver是一个开放和稳定的软件核心能够轻松构建可靠的BIM软件工具。我们鼓励开发者使用BIMserver作为其应用的基础。是拥有核心服务器功能,如修改,授权,比较,查询,模型检查,合并等。我们试图让开发者尽可能低的门槛:BIMserver有很多的开放式接口和网络协议(SOAP,PB,JSON) ,使用开放标准,被构建为便于微调插件框架,具有灵活的管理配置界面和非常好的开发文档和SDK。

    该软件的核心是基于开放标准的  国际金融公司(IFC)  ,因此知道如何处理IFC数据(IFC 2×3的IFC4)。该BIMserver不是一个文件服务器; 数据被解释和如在底层数据库对象存储。这种方法的主要优点是查询,合并并过滤BIM数据的可能性。有很多可能性连接到软件(接口,的API)。这样就可以编写自己的(闭源)应用程序,但仍然使用BIMserver平台下。该BIMserver软件的核心是与公布的  采用GNU Affero GPLv3的许可证。

    是的,它是开源的。不是因为我们是素食主义者,长出胡须长还是讨厌资本主义。但是,因为我们相信开发人员应该在源洞察力和能够调整它。因为这可以帮助他们建立更好的解决方案。许多(商业和非商业)应用程序信任BIMserver为基础。所以,你可能已经使用BIMserver而不自知......。

开源IFC工具为处理、展示和4D

开源IFC工具进行处理,可视化和采用最新的Java技术4D开源发展包括读 / 写 IFC文件,其中包括IFC装载机Java3D的和一个布尔建模。该工具集的第一部分已经提供下载。打开IFC工具的开发小组设在魏玛包豪斯大学,德国和支持包豪斯大学和豪赫蒂夫股份公司。

该项目2010年停止 ,移到

1. APSTEX软件库的IFC4认证过程中使用
    APSTEX现在是代表BuildingSMART官方IFC4认证团队的一部分。我们是负责对IFC4方案符合IFC-文件,STEP合规性,要求参数,实施者协议和mvdXML自动检查。在明确开发的,因此模型检测软件将被整合到全球测试结束文档服务器(GTDS - GTDS.BuildingSmart.org)。
2. IFC WebGL的浏览器
3. 入门- Java的工具箱IFC2x3 / IFC4

    基于IFC BIM模型的完全访问
    工具箱阅读,写作,修改和IFC模型的创建,基于Java的,早期绑定
    基本几何套路
    Extrusional的创建/旋转固体,布尔运算,几何测试,...
    翻译国际金融公司几何
    所有的3D获得IFC 2x3代表处支持
    图形用户界面组件
    IFC数据的可视化,易于集成到Java应用程序,BIM协作格式的支持(BCF)
    Java查看国际金融公司模型
    准备Web集成
    WebGL的浏览器国际金融公司模型
    准备集成到网站
    IFC服务器应用程序
    的IFC文件准备WebGL的浏览器(即将推出)

IfcOpenShell

国际金融公司文件格式IfcOpenShell开源软件库是一个开源软件库,可帮助用户和软件开发商与IFC文件格式工作。IfcOpenShell使用Open CASCADE来解释IFC文件中的隐式几何。IfcOpenShell的许可LGPL许可鼓励它在这两个专有软件和开源软件的自由使用。

    IfcOpenShell
    IfcOpenShell是一个开源(LGPL)的软件库,可帮助用户和软件开发商的合作IFC文件格式。在IFC文件格式可以用来形容建筑和施工数据。格式通常用于建筑信息模型。

    IfcOpenShell采用开放CASCADE(在打开CASCADE社区版)内部的隐式几何转换在IFC文件到明确的几何形状,任何软件CAD或建模软件包可以理解。

    请注意,IfcOpenShell是一个进展中的工作。目前仅与.IFC扩展名的文件的支持(技术上称为IFC-SPF)。对于IFC-XML和IFC-ZIP支持将在未来添加。请注意,在这一刻IfcOpenShell可能不完全理解所有的几何形状,它存在于一个.IFC文件,放心,它会做它可以最好的和支持其他类型的几何体已经在它的途中。

    目前,在菜单上是针对Autodesk 3ds Max中,用于搅拌机进口商和一个独立的应用程序,以IFC文件转换成波前obj文件的供应。此外,软件开发人员都明确鼓励使用IfcOpenShell库在自己的应用程序。

    经常问的问题
    这个名字是什么?IFC打开地狱?
    不,你不能正确阅读。一个IfcOpenShell是几何形状IFC文件内说明的方法之一。由于名称上的国际金融公司(IFC)的一部分反映,开源部分,该项目的几何形状的一部分,我们想通我们会选择这个作为我们的名字。
    PS:不,我们不叫openIfcShell要么

IFCEngineDLL

打开IFC 读取和写入使用基于IFC引擎DLL中的一套开放的不同编程语言的例子读 / 写的例子提供了任何人熟悉如何使用IFC的第一步。子集公布在本网站的“你好墙”教程。国际金融公司引擎DLL在TNO,荷兰开发,并免费提供用于非商业用途。

    IFC引擎DLL是一个生成的IFC模式流行的版本的3D几何能力步工具箱。该组件能够加载、编辑和创建步骤物理文件(以及XML符号)和它们的架构通过它自己的对象数据库。这包括所有目前可用的IFC版本。IFC 2x3文件和IFC 4几何的产生。
    发展开始于2001,并在2006的商业化。拥有超过40家软件公司使用它今天和100个更新,每年在过去的5年中,它是一个可靠和广泛使用的产品。
    一些公司购买IFC引擎DLL的具体原因:
    速度和可扩展性
    多平台:Windows,Linux和OSX在32位和64位支持
    嵌入式几何内核
    可靠性和支持
    价格和可用性的源代码
    最灵活的IFC的观众也可供下载(免费用于商业用途)。
    下一个最新的IFC标准我们也在α和β的标准,我们创造的工具之一是参数IFC
    IFC引擎DLL中使用超过50种不同的商业应用,从欧洲,美国,中国,澳大利亚,日本。开发和拥有的RDF公司本产品包括几何内核,在公司范围内的许可证的所有源代码的情况下是可用的。
    文件的C / C++ 32 / 64位和C # 32 / 64位可以在这里找到:在线文档。

    [prices](http://www.ifcbrowser.com/)
    15700欧元/年, 2826欧元升级/年

STEP Class Library

开源STEP类库生成C ++和Python的EXPRESS模式,包括IFC的2x3 2x4的和。包括用于SDAI软件类(ISO 10303-22),和一个part21文件读/写器的可执行文件。用于BRL-CAD的STEP转换。BSD许可证允许在商业软件免费使用。

    STEPcode(原NIST的STEP类库)用于IFC,STEP,以及利用ISO10303(STEP)的技术等标准。它可以生成从EXPRESS(10303-11)架构的C ++和Python。代码是能够读取和写入阶梯部21交换文件。它还采用零件22和23(SDAI和C ++绑定)。 http://stepcode.org

ifc-sdk

FC项目提供的SDK软件开发工具包(SDK)对阅读和写作的建筑信息模型(BIM)在工业基础类定义(IFC)格式。国际金融公司的SDK的第一个版本是在C++程序设计语言提供符合IFC 2x3 TC1标准buildingSMART国际发达。

提交马修Marache于2009年10月20日 描述

国际金融公司SDK项目提供了读取和写入的工业基础类定义的建筑信息模型(BIM)(IFC)格式的软件开发工具包(SDK)。国际金融公司SDK的第一个版本的C ++编程语言,并提供符合国际协同工作联盟开发的2X3 IFC标准TC1(IAI BuildingSmart,请参阅:http://www.buildingsmart.com/)。 特征

国际金融公司SDK项目的主要特点如下:1,阅读和写作在ISO-10303-21步骤物理文件(SPF)ASCII格式且符合定义与IFC 2X3 TC1 ISO-103030-11 EXPRESS数据模型BIM模型; 2.功能解析和管理设置IFC 2X3 TC1标准的全部实体; 3.解析和EXPRESS逆管理和派生属性4.管理BIM在内存5.多车型 未来的计划

IFC File Analyzer

IFA

IFC文件分析器从IFC文件生成一个Excel电子表格。为每一个列包含实体实例的属性而创建一个工作表。多个IFC文件可以进行一次比较实体使用。IFC文件分析器是由NIST提供免费

    描述/摘要:
    IFC文件分析工具将生成从IFC文件的电子表格或CSV文件。IFC(工业基础类)是用于促进建筑施工行业互操作性的数据交换标准。国际金融公司是开发buildingSMART。
    典型的IFC观众展示由IFC文件表示建筑物的可视化。用户可以深入到一个单一的建筑对象单个属性。然而,没有办法以查看所有实体及其属性中的一次。IFC文件分析器通过从IFC文件电子表格或CSV文件提供了此功能。
    在电子表格中,为文件中的每个类型IFC实体创建一个工作表。在工作表中的每一行都包含一个IFC实体实例的属性。多个IFC文件可以同时被分析以比较实体使用。有选择,选择哪些类型的国际金融公司(IFC)的实体处理和报告的一些IFC实体反向关系。电子表格示例:IFC_File_Analyzer_ifc.xlsx