司空學社·MeetUp | SikongSphere-IFCTools 產(chǎn)品介紹
Sikongsphere-ifctools是司空學社組織的開源項目,是國內(nèi)第一個完全實現(xiàn)IFC標準的開源核心模型庫。該項目的定位為基于Java語言的IFC(industry foundation class)開源實現(xiàn),并涵蓋了相關工具包,旨在為建筑模型的信息化夯實基礎。目前,SikongSphere-IFCTools 完成了0.0.1版本的上線,本文基于項目負責人劉鈞文老師的分享,對于IFCTools的產(chǎn)品進行介紹。
SikongSphere IFC Tools 0.0.1 版本產(chǎn)品介紹:?
https://www.bilibili.com/video/BV1qW4y1H7DA/?spm_id_from=333.1007.tianma.1-1-1.click&vd_source
=43600c17e579f196f281ecd747b72e39
Part 01?項目背景
? ? ? ?伴隨著智慧城市建設的浪潮,建筑規(guī)劃領域的數(shù)字化也成為了學術、工業(yè)界關注的焦點。一個數(shù)據(jù)化的產(chǎn)品通??梢苑譃榘藗€層級:解決方案層、用戶交互層、數(shù)據(jù)應用層、數(shù)據(jù)服務層、數(shù)據(jù)計算層、數(shù)據(jù)存儲層、數(shù)據(jù)接入層以及數(shù)據(jù)感知層(圖1)。然而在當下建筑數(shù)字化產(chǎn)業(yè)的發(fā)展中,上述流程還存在著若干問題亟待解決:

不同領域之間的數(shù)據(jù)模型相互割裂
CIM中的GIS、BIM和IOT在展示層下是隔離的
三種數(shù)據(jù)模型無法進行相互的分析
BIM目前還沒有與主流技術生態(tài)很好地結合起來
BIM閉源生態(tài)占主導,與主流生態(tài)隔離
開發(fā)語言有差異,導致主流框架無法集成
BIM目前沒有比較好的開原生態(tài)來支撐持續(xù)創(chuàng)新
掌握BIM內(nèi)核的研發(fā)人員非常缺失
建筑規(guī)劃行業(yè)的教育體系不重視對編程技能的培養(yǎng)
行業(yè)內(nèi)比較依賴成熟的國外商業(yè)軟件
Part 02?產(chǎn)品介紹
產(chǎn)品架構
IFCTools在架構上分為三層Model層、擴展層和SDK層。

Model層:負責所有IFC標準的具體實現(xiàn)——基于IFC文檔的Java模型實現(xiàn)。
SDK層:負責與用戶進行交互(對于建筑元素進行操作分析的函數(shù)集、對于SQL的支持等)
擴展層:一些擴展功能模塊(圖模塊、序列化模塊、壓縮模塊等)
產(chǎn)品特性
實現(xiàn)了IFC標準
原型文件
提供了基礎的IFC文件讀寫功能
目前只能支持IFC文件的讀寫,不支持其他格式文件
使用了Java作為開發(fā)語言,可以兼容Java生態(tài)中的開源項目
GIS領域:GeoTools、GeoMesa、GeoTrellis等
大數(shù)據(jù)領域:Hadoop、Spark、Flink、HBase等
代碼完全開源,由司空學社維護
項目負責人:劉鈞文
技術負責人:王博鴻
基于GPL 3.0協(xié)議
Part 03 路線圖
?IFC-Tools項目的開發(fā)路線分為六個階段:POC階段(Done)、原型開發(fā)階段(Done)、要素開發(fā)階段(Doing)、整體開發(fā)階段、擴展開發(fā)階段。

原型開發(fā)(已完成):對于簡單IFC文件進行解析,并將IFC模型存入內(nèi)存中,供SDK層進行操作解析
下圖為IFCModel的結構,elements內(nèi)部維護了具體IFC實體的實例。

要素開發(fā)階段(進行中):從空白場地出發(fā),不斷完善model層中各個建筑要素
