摘要:多年來,使用地理信息系統(tǒng) (GIS) 技術(shù)創(chuàng)建空間數(shù)據(jù)庫的目的是提供大范圍空間和建筑區(qū)域外的信息;而建筑信息模型 (BIM) 技術(shù)主要針對室內(nèi)和室外的小空間,所針對的用戶和開發(fā)的應(yīng)用程序都有所不同。一方面,GIS技術(shù)的發(fā)展,包括新型的空間數(shù)據(jù)采集工具(例如激光掃描儀)的重大推廣使用,使越來越多的用戶開始在地理信息數(shù)據(jù)的基礎(chǔ)上附加建筑細節(jié)數(shù)據(jù)。另一方面,BIM技術(shù)也開始在建筑之外的空間進行延伸。數(shù)據(jù)處理和開發(fā)人員注意到需要將兩種不同的技術(shù)結(jié)合起來,從而避免重復(fù)的處理工作。本文提出了一種將GIS數(shù)據(jù)和BIM模型融合的方案,以一種統(tǒng)一的數(shù)據(jù)庫存儲方式,兼容BIM/GIS的數(shù)據(jù)存儲和使用環(huán)境。BIM系統(tǒng)能夠同時訪問BIM和GIS數(shù)據(jù),滿足分析建筑物及其周圍環(huán)境的需求;GIS系統(tǒng)可以獲取空間分析所需的最新建筑數(shù)據(jù),滿足空間分析、建筑管理或路線規(guī)劃等需求。本文中提出的方法使用集成BIM-GIS模式(稱為 BIGI-S),基于工業(yè)基礎(chǔ)類 (IFC) 和CityGML Schema,以單數(shù)據(jù)庫的形式集成給其他應(yīng)用調(diào)用。本文介紹了該解決方案的技術(shù)方案,包括具體的數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)轉(zhuǎn)換算法以及技術(shù)路線。
關(guān)鍵詞:BIM;GIS; CityGML; IFC;數(shù)據(jù)庫
1.引言
將GIS(地理信息系統(tǒng))和BIM(建筑信息模型)系統(tǒng)的數(shù)據(jù)庫進行集成的研究僅有10年歷史,而GIS系統(tǒng)可以追溯到上世紀(jì)60年代初,BIM系統(tǒng)可以追溯到上世紀(jì)80年代初。然而,就BIM而言,和“建筑信息模型”(包括BIM的縮寫)這個術(shù)語在 1990 年代開始被廣泛使用[1]。 2002 年,Autodesk Inc. 發(fā)表了題為“建筑信息模型”[2] 的文件,普及了 BIM 的思想。
多年來,使用 GIS 技術(shù)創(chuàng)建的空間數(shù)據(jù)庫的目標(biāo)是提供有關(guān)建筑物之外的空間信息。 21 世紀(jì)初,此類技術(shù)的重大發(fā)展、快速數(shù)據(jù)采集的新工具(例如激光掃描)以及不斷增長的用戶需求,促使了GIS領(lǐng)域開始向建筑物內(nèi)部空間發(fā)展。有關(guān)的數(shù)據(jù)標(biāo)準(zhǔn),例如建筑內(nèi)部空間數(shù)據(jù)模型 (BISDM)和后來的CityGML,也有助于相關(guān)程序的發(fā)展。與此同時,BIM相關(guān)的應(yīng)用也在快速發(fā)展。然而,技術(shù)開發(fā)人員開始注意到,盡管在兩個領(lǐng)域有很多數(shù)據(jù)處理工作是重復(fù)的,但將兩種不同的技術(shù)結(jié)合起來并不簡單。許多應(yīng)用程序需要連續(xù)(在空間意義上)訪問建筑物內(nèi)外的信息(例如,導(dǎo)航應(yīng)用程序)。這種需求的重要性在兩個分支機構(gòu)之間的協(xié)議(即ESRI和Autodesk于2017年11月15日的公告[3])中以及建立一個關(guān)于 BIM-GIS 概念映射的ISO 19166標(biāo)準(zhǔn)(B2GM)的工作組中,是顯而易見的[4]。
從BIM和GIS的實踐中得出結(jié)論,需要在GIS系統(tǒng)中展示和分析來自BIM模型的數(shù)據(jù),而無需在每次更新BIM數(shù)據(jù)集后重復(fù)導(dǎo)入此類數(shù)據(jù),因此需要一個可統(tǒng)一環(huán)境,可以從中處理 BIM 和 GIS 數(shù)據(jù)。開發(fā)一個通用的數(shù)據(jù)模型和一種格式是一件耗時的工作,所以本文的解決方案專供軟件開發(fā)人員使用,主要是在BIM-GIS的通用標(biāo)準(zhǔn)被開發(fā)和接受之前的過渡時期使用。該技術(shù)路線需要以原始形式使用先前創(chuàng)建的數(shù)據(jù)資源。本文展示了融合BIM和 GIS領(lǐng)域的研究成果,即為BIM和GIS系統(tǒng)使用單個數(shù)據(jù)庫,同時保留它們典型的 IFC(工業(yè)基礎(chǔ)類)和CityGML源數(shù)據(jù)模型。
2.BIM/GIS集成數(shù)據(jù)庫方案設(shè)計
開發(fā)新的BIM和GIS數(shù)據(jù)模型需要對市場上現(xiàn)有應(yīng)用程序進行徹底的變革,考慮到實際成本問題,本文通過在單個數(shù)據(jù)庫(后面稱為集成BIM-GIS數(shù)據(jù)庫 (BIGI-D))中以原始形式提供IFC和CityGML數(shù)據(jù),集成數(shù)據(jù)庫并不意味著模型概念上的單一數(shù)據(jù)庫,而是一個連貫的技術(shù)環(huán)境,允許各種應(yīng)用程序使用兩種格式的數(shù)據(jù)并通過統(tǒng)一接口進行數(shù)據(jù)交換。在應(yīng)用階段,IFC Schema保存的BIM數(shù)據(jù),使用模型中的表、屬性和存儲過程進行數(shù)據(jù)處理;CityGML Schema的GIS數(shù)據(jù)使用CityGML數(shù)據(jù)中的表、屬性和存儲過程進行處理。這種體系在這里有兩個用處——作為數(shù)據(jù)結(jié)構(gòu)和作為在數(shù)據(jù)庫中存儲表和過程。存儲過程是一組具有名稱的SQL(結(jié)構(gòu)化查詢語言)語句,它們作為塊存儲在數(shù)據(jù)庫管理系統(tǒng)中。此外,增加BIM-GIS Schema(BIGI-S),用于聯(lián)合存儲IFC和CityGML的數(shù)據(jù),以方便BIM和GIS之間的轉(zhuǎn)換和數(shù)據(jù)共享。以上三種方案都在一個數(shù)據(jù)庫中實現(xiàn)。
基于動態(tài)數(shù)據(jù)轉(zhuǎn)換的模型基于另一種方法實現(xiàn):數(shù)據(jù)僅存儲在BIGI-S中,專用于單個 BIM和GIS應(yīng)用程序(以及其他應(yīng)用程序)的數(shù)據(jù)結(jié)構(gòu),通過數(shù)據(jù)庫視圖和存儲過程實現(xiàn)。專用于BIM應(yīng)用程序的數(shù)據(jù)結(jié)構(gòu)是基于從BIGI-S轉(zhuǎn)換數(shù)據(jù)的存儲過程即時生成的;生成CityGML數(shù)據(jù)結(jié)構(gòu)的方法相同。該解決方案的主要優(yōu)點是消除了數(shù)據(jù)冗余,每個對象都保存在數(shù)據(jù)庫中一次,但可以使用CityGML和IFC視圖查看。
數(shù)據(jù)庫可以基于BIM和GIS數(shù)據(jù)進行擴展,對接相應(yīng)的應(yīng)用系統(tǒng),從而每一個應(yīng)用系統(tǒng)都可以訪問集成的BIM/GIS數(shù)據(jù)。圖1展示了BIGI-D架構(gòu),它在允許GIS和BIM系統(tǒng)使用統(tǒng)一的數(shù)據(jù)庫配置。
實際應(yīng)用中,對于選定的建筑物,可能存在GIS、BIM或在GIS和BIM中三種情況。 本文的方案中,假設(shè)只有當(dāng)沒有可用的原始BIM模型時,才應(yīng)將建筑模型從CityGML模式轉(zhuǎn)換為集成數(shù)據(jù)庫。因為BIM模型有豐富細節(jié)以及后期對該模型構(gòu)建的BIM流程的數(shù)據(jù)更新的,BIM模型是最理想和最完整的建筑數(shù)據(jù)來源。
3.數(shù)據(jù)融合實施方案
使用BIGI-D數(shù)據(jù)庫的第一階段是數(shù)據(jù)存儲。對于來自BIM應(yīng)用的數(shù)據(jù),該階段將數(shù)據(jù)導(dǎo)出為IFC文件并將其保存在專用于存儲IFC數(shù)據(jù)的數(shù)據(jù)庫模式中(IFC Schema),它包含對每個表進行操作的存儲過程,支持寫入、讀取、更新和刪除數(shù)據(jù)。保存整個模型后,執(zhí)行從IFC到BIGI-S的數(shù)據(jù)轉(zhuǎn)換過程。數(shù)據(jù)由存儲過程轉(zhuǎn)換為BIGI-S中的表。該過程完成后,將刪除IFC中的數(shù)據(jù),避免了數(shù)據(jù)冗余。
在下一階段,BIM和GIS應(yīng)用程序可以調(diào)用保存在BIGI-D中的建筑模型數(shù)據(jù)。BIM應(yīng)用程序調(diào)用將所選建筑模型的數(shù)據(jù)從BIGI-S傳輸?shù)絀FC Schema的存儲過程。使用完成后,數(shù)據(jù)從IFC Schema中刪除。GIS應(yīng)用的調(diào)用過程與此相同。如果BIM應(yīng)用更新了BIM模型數(shù)據(jù),IFC Schema中存儲的數(shù)據(jù)將被轉(zhuǎn)換為BIGI-S,數(shù)據(jù)庫中的觸發(fā)器開始更新CityGML Schema中數(shù)據(jù)過程,GIS系統(tǒng)接收有關(guān)對象的新數(shù)據(jù)。同樣,由GIS系統(tǒng)保存的建筑數(shù)據(jù)可自動用于BIM應(yīng)用程序。如果建筑物內(nèi)部的數(shù)據(jù)僅從IFC模型中獲取,則整個模型的數(shù)據(jù)將保存在BIGI-S中,僅從CityGML獲取有關(guān)建筑物的數(shù)據(jù)的情況也相同。如果建筑數(shù)據(jù)是從BIM和GIS同時獲得的,幾何和描述數(shù)據(jù)取自IFC數(shù)據(jù),并附加來自CityGML的空間描述數(shù)據(jù)。數(shù)據(jù)庫中的每個建筑物都有一個全局唯一標(biāo)識符 (GUID),IFC和CityGML Schema中的同一建筑物將具有相同的GUID,允許BIGI-D在獲取數(shù)據(jù)的過程中識別建筑物。
保持三份數(shù)據(jù)一致性的方法是進行實時轉(zhuǎn)換。IFC和 CityGML數(shù)據(jù)庫模式不包含表,而只包含存儲過程。在IFC Schema中寫入數(shù)據(jù)的過程是將IFC數(shù)據(jù)直接轉(zhuǎn)換為BIGI-S。讀取數(shù)據(jù)是從BIGI-S獲取源數(shù)據(jù)并將其轉(zhuǎn)換為IFC格式,而不使用IFC Schema作為中間表。GIS應(yīng)用程序處理數(shù)據(jù)的過程相同,數(shù)據(jù)通過CityGML Schema中的存儲過程在BIGI-S之間進行轉(zhuǎn)換。
3.1.IFC數(shù)據(jù)存儲結(jié)構(gòu)
IFC數(shù)據(jù)庫模型與IFC模型的數(shù)據(jù)結(jié)構(gòu)完全對應(yīng),為了能夠?qū)Ρ4嬖陉P(guān)系數(shù)據(jù)庫中的BIM數(shù)據(jù)進行編輯操作,應(yīng)用了存儲過程機制。對于每一類IFC對象,都為寫、讀、更新和刪除操作準(zhǔn)備了四個存儲過程。為了實驗的目的,為100多種IFC對象準(zhǔn)備了能夠?qū)懭?、讀取、修改和刪除IFC對象數(shù)據(jù)的存儲過程。這些過程是在PostgreSQL平臺上以SQL和PL/pgSQL(過程語言/PostgreSQL)語言實現(xiàn)的。為了進行比較,還為 Oracle 數(shù)據(jù)庫中的 PL/SQL(SQL程序語言)和Microsoft SQL Server數(shù)據(jù)庫中的T-SQL(Transact SQL)中的幾個選定IFC 對象準(zhǔn)備了存儲過程。這部分實驗的目的是檢查是否可以創(chuàng)建無論使用哪個數(shù)據(jù)庫平臺都可以以類似方式觸發(fā)的存儲過程。實驗結(jié)果證實,對PostgreSQL、Oracle和SQL Server數(shù)據(jù)庫中的表操作的預(yù)準(zhǔn)備存儲過程的觸發(fā)非常相似。因此,所提出的解決方案可以與任何上述關(guān)系數(shù)據(jù)庫管理系統(tǒng)一起使用。
3.2.IFC數(shù)據(jù)自動導(dǎo)入
將數(shù)據(jù)從IFC文件重寫為數(shù)據(jù)庫中的IFC Schema的過程包括三個步驟:從IFC文件讀取數(shù)據(jù),將數(shù)據(jù)以可讀的形式保存數(shù)據(jù)庫管理系統(tǒng)(創(chuàng)建SQL腳本),通過執(zhí)行數(shù)據(jù)庫中的腳本將數(shù)據(jù)加載到數(shù)據(jù)庫中。因此,數(shù)據(jù)傳輸操作是一項多步驟任務(wù),包括將數(shù)據(jù)從BIM程序?qū)С鰹镮FC格式,然后將數(shù)據(jù)從IFC文件導(dǎo)入到集成 BIM/GIS空間數(shù)據(jù)庫中的BIGI-S。數(shù)據(jù)過程如圖2所示。
3.3.統(tǒng)一IFC數(shù)據(jù)和CityGML數(shù)據(jù)
解決方案的架構(gòu)是在單個數(shù)據(jù)庫中使用多個Schema。單獨的IFC Schema和CityGML Schema分別專用于存儲BIM和GIS數(shù)據(jù)。GIS應(yīng)用程序只能通過CityGML Schema使用數(shù)據(jù),而BIM應(yīng)用程序可以通過IFC Schema訪問數(shù)據(jù)。IFC和CityGML Schema被視為臨時數(shù)據(jù)集。存儲在IFC Schema中的數(shù)據(jù)被轉(zhuǎn)換為BIGI-S,允許無損保存來自IFC模型的數(shù)據(jù)。同樣,GIS應(yīng)用程序保存在CityGML Schema中的數(shù)據(jù)也轉(zhuǎn)換為BIGI-S。集成數(shù)據(jù)Schema以位于BIGI-S中的一組表和存儲過程的形式表示。在構(gòu)建集成數(shù)據(jù)Schema時,要考慮GIS和BIM數(shù)據(jù)模型的差異。表1顯示了選定的示例,以及在CityGML和IFC Schema中存儲建筑數(shù)據(jù)的方法之間的差異。它需要許多數(shù)據(jù)轉(zhuǎn)換才能通過中間模型在這些模型之間轉(zhuǎn)換數(shù)據(jù)。BIGI-S中實現(xiàn)的存儲過程可以在CityGML和IFC Schema與集成Schema之間保存和讀取數(shù)據(jù)。數(shù)據(jù)存儲在BIGI-S中的公共表中,并使用GIS系統(tǒng)中通常使用的幾何數(shù)據(jù)類型。
BIGI-S中的存儲過程允許數(shù)據(jù)從IFC Schema到BIGI-S的即時轉(zhuǎn)換,反之亦然。CityGML Schema和BIGI-S之間的雙向數(shù)據(jù)轉(zhuǎn)換數(shù)據(jù)模型如表1。對于繼承自IfcProduct類的對象,將數(shù)據(jù)從IFC Schema轉(zhuǎn)換為BIGI-S的過程包括幾個步驟:重寫對象的基本屬性,轉(zhuǎn)換對象的幾何形狀到全局坐標(biāo)系,根據(jù)TrueNorth屬性考慮坐標(biāo)系的旋轉(zhuǎn),保存分配給對象的各個屬性,保存分配給對象的屬性集(圖3)。
對于從IfcObjectDefinition類繼承的每個對象類,對象數(shù)據(jù)從IFC Schema到BIGI-S的轉(zhuǎn)換過程的算法是相同的。
逆向轉(zhuǎn)換包括在BIGI-S表中存儲的數(shù)據(jù)的基礎(chǔ)上,創(chuàng)建分配給對象的屬性集、分配給對象的單個屬性以及從BIGI-S中獲得的對象局部坐標(biāo)系中的幾何圖形。在全局系統(tǒng)中表示的幾何,考慮到宿主對象的所有局部坐標(biāo)系。最后一步是創(chuàng)建對象本身及其基本屬性(圖4)。
從CityGML模式到BIGI-S的轉(zhuǎn)換要簡單得多。轉(zhuǎn)換過程涉及重寫有關(guān)對象、幾何數(shù)據(jù)和屬性的基本數(shù)據(jù)(圖5)。
數(shù)據(jù)從BIGI-S到CityGML Schema的逆轉(zhuǎn)換是類似的。它包括基本對象數(shù)據(jù)、對象幾何和屬性(圖6)。
4.結(jié)論
本文對相關(guān)文獻和當(dāng)前BIM解決方案進行深入研究后,提出了一種新的BIM和GIS數(shù)據(jù)集成方法,該方法使用了一個集成空間數(shù)據(jù)庫,該數(shù)據(jù)庫由三種不同的模式(在結(jié)構(gòu)和獨立位置層面)組成。數(shù)據(jù)庫作為IFC數(shù)據(jù)的存儲允許GIS系統(tǒng)使用當(dāng)前的BIM數(shù)據(jù),而無需將IFC文件導(dǎo)入,這為開發(fā)跨專業(yè)系統(tǒng)提供了便利性。本文提出的BIM/GIS空間數(shù)據(jù)集成數(shù)據(jù)庫使存儲GIS 和BIM數(shù)據(jù)成為可能,從而使不同類型的系統(tǒng)能夠以一致的方式同時調(diào)用相同的數(shù)據(jù)。BIM系統(tǒng)能夠在分析建筑物的同時分析其周圍環(huán)境;GIS系統(tǒng)可以獲取空間分析、建筑管理或?qū)Ш綉?yīng)用所需的最新建筑數(shù)據(jù)。
實現(xiàn)這種解決方案的條件是在BIM工具中加入數(shù)據(jù)庫訪問機制。這種機制可以取代現(xiàn)有的BIM應(yīng)用程序功能,即處理自己的二進制格式數(shù)據(jù)文件。這是一種簡單的解決方案,只需要進行技術(shù)修改,而創(chuàng)建新的模型格式。就GIS而言,只要軟件支持CityGML格式,幾乎不需要進行重大修改。
參考文獻:
[1]Ruffle, S. Architectural design exposed: From computer-aided drawing to computer-aided design. Environ. Plan. B Plan. Des. 1986, 13, 385-389. [CrossRef]
[2]Autodesk, Inc. Building Information Modeling, Autodesk Whitepaper; Autodesk, Inc.: San Rafael, CA, USA, 2002.
[3]Schrock, G. Esri-Autodesk Partnership, Esri. 21 January 2019. Available online: https://www.esri.com/about/ newsroom/arcnews/esri-autodesk-partnership/ (accessed on 17 February 2020).
[4]ISOTechnicalCommittee.ISO/TC211GeographicInformation/Geomatics. ISO/CDTS19166; ISO:Geneva,Switzerland, 2020.
[5]Wyszomirski, M. The concept of an integrated spatial database for BIM and GIS systems. In Koncepcja Zintegrowanej Bazy Danych Przestrzennych Dla Systemów BIM i GIS; Politechnika Warszawska: Warszawa, Poland, 2019.
[6]D?llner, J.; Hagedorn, B. Integrating Urban GIS, CAD and BIM Data by Service-Based Virtual 3D City Models; Taylor & Francis Group: London, UK, 2007.
作者簡介:張鐸(1991-),男,漢族,河北省邢臺市,助理工程師,碩士研究生,上??睖y設(shè)計研究院有限公司,研究方向:地理與建筑信息化
上??睖y設(shè)計研究院有限公司 ?上海 ?200335