IFC總體架構

萬里歸來少年心發表於2018-08-03

1 EXPRESS語言

    IFC架構採用EXPRESS語言定義,EXPRESS語言是由STEP(Standard for the Exchange of Product Model Data)開發的概念性架構語言。STEP是計算機可讀的用於交換和描述產品製造資訊的標準。

    EXPRESS用於物件導向的資訊描述語言,處於STEP的基礎和核心地位。它將IFC模型的結構描述為:規範的類,與類相關聯的屬性,類的約束,以及類與其他約束之間的關係。

2. 總體架構

     IFC架構分為四個層:領域層、共享層、核心層、資源層。

名稱 描述
領域層 定義特定專業領域所需的實體物件,如電氣領域的電纜、電氣裝置等。
共享層 提供了通用性的物件,包括建築服務元素、元件元素、建築元素、管理元素、裝置元素等。用於領域層多個領域共享。
核心層 具體化的定義了模型的基本結構,基礎關係和共用概念。
資源層 定義了可重複利用的實體與型別,包括幾何資源、屬性資源、材料資源等。該層的實體不能獨立存在,只能通過被其他層引用的方式出現。

      實體能引用本層或下面各層的實體資源,即領域層可以引起其他三層的實體物件,共享層能引用核心層和資源層,核心層只能引用資源層。

      IFC架構將所有的物件與類按概念進行分類:型別、實體、函式、規則、屬性集及量集。

名稱 描述
型別(Types) 包括:定義型別(Defined Types)、列舉型別(Enumeration Types)、選擇型別(Select Types)
實體 (Entities) 有屬性與約束定義的資訊類,模型由大量實體物件組成
函式(Functions) 用於計算實體的屬性,規則(Rules)用於約束實體屬性的範圍及驗證模型的正確性
屬性集(Property Sets) 一組屬性的集合,可被不同的物件所引用。屬性表達了物件的說明資訊,屬性集通過關係實體IfcRelDefinesByProperties將屬性關聯到具體的構件。
量集(Quantity Sets) 對定量資訊的集合,可被不同的物件引用。IfcElementQuantity是量集的描述實體,表示構件定量屬性的集合,通過關係實體IfcRelDefinesByProperties將量集關聯到具體的構件。

3.基本概念和繼承關係

     IFC檔案中,任何一個實體(如IfcBeam)都是通過屬性來描述自身資訊,屬性分為:直接屬性、反屬性,匯出屬性。

名稱 描述
直接屬性 指標量或直接資訊,如GlobalId、Name等
匯出屬性 由其他實體表述的屬性,如OwnerHistory、ObjectPlacement、Representation。
反屬性 通過關聯實體進行連結的屬性。如HasAssociations通過關聯實體IfcRelAssociates可以關聯構件的材料資訊。

      IFC實體的的屬性是通過繼承關係獲得的,如構件IfcBeam在IFC4版本中總共有33個屬性,而自身只有Predefined Type這一個屬性,其餘的32個屬性都是繼承而來.

      在IFC物理檔案中語句IfcBeam則只顯示了9個屬性,包括直接屬性和匯出屬性,其餘的24個屬性為反屬性。如下圖只顯示了直接屬性和匯出屬性,反屬性詳見官方文件。

 

相關文章