999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于IFC的二三維聯動BIM可視化引擎

2020-07-13 12:56:00魏國富熊曉蕓王金龍
計算機應用與軟件 2020年7期
關鍵詞:引擎可視化信息

魏國富 熊曉蕓 王金龍

(青島理工大學信息與控制工程學院 山東 青島 266520)

0 引 言

可視化引擎是利用計算機圖形學和圖像處理技術,將數據轉換為圖形圖像在屏幕上顯示出來并進行交互處理,只提供接收外部數據的接口,通過調用外部接口實現對數據可視化管理的底層函數庫[1]。

隨著建筑行業和智慧城市的發展,BIM可視化技術成為研究的熱門,它為建筑領域實現BIM模型全生命周期可視化管理提供了技術需求。BIM可視化引擎是可視化系統的核心,可以對BIM模型進行結構屬性數據提取,并進行可視化展示與交互處理。利用可視化引擎既可以對模型進行可視化展示,又可以基于引擎進行二次開發,以滿足不同應用需求,從而減少了BIM應用系統的開發成本,并大大縮減了開發過程。因此在BIM可視化研究中,BIM可視化引擎的研發具有重大的實際意義。

在BIM可視化研究方面,Chen等[2]基于BIM的火災救援可視化預警系統,實現了對建筑內火災的可視化管理。Liu等[3]利用BIM可視化技術對地下設施的運行和維護進行可視化管理,提高了工程質量和施工效率。Johansson等[4]利用BIM可視化技術實現了實時大型建筑模型可視化管理。Yu等[5]利用BIN可視化技術對基坑工程進行處理,實現基坑可視化管理。宋樂[6]基于BIM可視化消防設備運維管理系統的研究,實現了對BIM模型運維可視化管理。方自虎等[7]利用二維平面信息進行鋼筋混凝土梁柱節點單元分析。

目前,BIM可視化往往只針對二維圖紙進行平面可視化管理[8]或只針對三維模型進行空間可視化管理[9],但是對于消防、商場等BIM可視化系統,既需要二維平面信息進行某一樓層位置定位與分析,也需要三維空間信息進行整體全面展示與管理,還需要二維平面信息與三維空間信息進行同步管理。目前BIM可視化系統,二維可視化無法實現對BIM模型的空間管理,三維可視化無法實現對平面的分析與管理,無法結合二維可視化與三維可視化的優勢,因此需對BIM進行二三維聯動可視化管理。如果只是簡單將二維與三維可視化集成在一個平臺下[10],由于無法打通二維信息與三維信息之間的信息壁壘,難以對BIM模型從可視化角度進行整體全面的分析和管理。

綜上所述,目前BIM針對二三維聯動可視化研究較少,當前BIM可視化系統難以對BIM模型進行全面的管理。二三維聯動可視化的難點在于如何解決數據關聯和交互操作對應問題,二三維聯動主要包括兩方面:數據聯動與交互聯動。數據聯動主要指二維平面信息與三維空間信息進行聯動處理;交互聯動主要指對二維平面圖與三維空間模型在放大、縮小、旋轉、移動等操作上的聯動處理。通過二三維聯動可視化,不僅可以豐富BIM可視化手段,而且可以對BIM模型進行全面管理,因此對二三維聯動可視化的研究非常有必要。

在二三維聯動方法的研究上,馬波等[11]利用關聯ID方法實現了GIS二三維數據聯動,缺少對交互聯動的研究。劉俊楠[12]在GIS領域將二三維坐標根據畫布中心點坐標進行一體化映射,然后采用空間數據集成的方法,實現GIS視圖二維和三維之間的聯動,但是占用資源多,響應時間較長。李小敏等[13]通過中心點坐標,利用平面參數和三維場景參數互相解算的方法,實現了二三維視圖聯動效果,但是GIS文件與BIM模型文件存儲方式不同,且BIM模型文件更為復雜,不適用BIM領域?;贐IM的二三維聯動可視化的研究難點有三點:(1) 三維數據由BIM實體構件組成,二維數據由平面元組構成,如何對BIM模型文件的三維實體和二維元組進行數據關聯;(2) 針對BIM可視化技術,如何快速高效地實現可視化數據聯動效果;(3) 如何利用WebGL技術解決二維與三維坐標轉換問題實現交互聯動效果。

IFC標準是International Alliance of Interoperability(IAI)組織制定的建筑工程數據交換標準,是全球接受范圍最廣的數據交換標準與共享標準[14]。通過對IFC標準進行研究,發現BIM模型通過IFC標準進行存儲時,會為每一個構件賦予唯一的GUID,因此可以利用該GUID進行BIM可視化二三維數據對應。徐照等[15]提出了一種對IFC文件進行轉化的方法,然后結合WebGL,對BIM模型進行可視化展示。

本文以BIM可視化中二三維聯動為研究對象,基于BIM可視化技術,針對IFC標準,設計了一種IFC文件解析方法,提出了一種統一ID映射和中心點坐標相結合的聯動方法。在此基礎上,利用WebGL技術,完成了二三維聯動BIM可視化引擎的設計與實現。

1 基于IFC的BIM二三維可視化原理

IFC標準是基于EXPRESS語言進行描述的建筑信息數據格式,因為其高標準化、開放、支持擴展的特點,目前大部分BIM二三維可視化系統都是基于IFC標準開發或者提供IFC數據接口支持IFC標準。

基于IFC標準的BIM模型二三維可視化首先對IFC文件進行處理,將二維與三維數據根據GUID進行關聯,然后利用WebGL技術將解析后的文件在瀏覽器端進行二三維可視化管理,實現從文件到可視化端展示的完成流程。基于IFC的BIM模型二三維可視化主要包括IFC文件解析與可視化展現兩個模塊。IFC文件解析模塊主要對IFC文件進行解析,獲取存儲的BIM信息并根據統一的GUID進行保存,完成IFC文件解析??梢暬宫F模塊通過在瀏覽器端利用WebGL技術對BIM信息進行加載渲染,完成二三維可視化展示。

1.1 IFC文件解析

IFC和OBJ、MTL、SVG是4種不同的數據格式,都有著各自的數據定義和組織方法。IFC文件存儲建筑幾何信息和結構信息,擁有著嚴格的數據層級。OBJ文件存儲BIM模型的所有構件實體幾何信息,MTL文件存儲與OBJ對應的構件實體材質信息,SVG文件是可縮放矢量圖形文件,存儲BIM模型的平面信息。

IFC框架(自下而上)整體由資源層、核心層、共享層和領域層四個層次構建,各層定義了相互獨立的實例對象或關系對象,通過互相關聯或引用的方式進行相應的數據信息描述,層次之間只能進行同層或下層的信息資源引用,如圖1所示。

圖1 IFC框架

在IFC標準中,實體是最小的基本組織單元,表示模型構件,還可以表示構件屬性與實體的關系。實體主要分為引用實體和描述模型構件實體兩類,描述模型構件實體統稱為構件單元實體,用于描述實體構件與構件屬性,如墻(IfcWall)、柱(IfcColumn)等實體構件,長度(IfcQuantityLength)等構件屬性。

針對IFC標準,本文設計了IFC文件解析方法,以解決二三維數據關聯的問題。IfcOpenShell提供讀取IFC實體屬性的方法,通過調用IfcOpenShell相關方法,對IFC文件進行解析,得到IFC存儲的BIM信息,并根據唯一的GUID生成相應二維和三維文件,用于瀏覽器端二維和三維的加載展示。IFC文件解析流程如圖2所示。

圖2 文件解析流程

對于IFC文件解析,首先通過遍歷IFC文件,獲取IfcProduct,對IfcProduct進行遍歷,獲取每一個IfcElement關系,層次遍歷IfcElement,得到所有實體屬性信息,將信息按照鍵值對形式封裝成Json格式文件,用于在瀏覽器端展示對應實體屬性信息。對IFC文件進行再次遍歷,獲取IfcSpatialStructureElement,層次遍歷每一個IfcElement,得到所有信息后,根據嵌套關系,為每一個實體設置Level,從而得到BIM模型的層次結構,并根據BoostStrap-Tree樹形結構,將層次信息數據封裝成Json格式文件,用于可視化中樹形結構的展示。通過遍歷IFC文件,獲取所有IfcProduct,層次遍歷IfcProduct,獲取每一個實體,對每一個實體層次提取IfcElement,根據IfcObjectPlacement和IfcProductRepresentation得到IFC幾何信息,將幾何信息保存為OBJ文件,并根據對應material信息保存為MTL材質文件,OBJ文件用于在瀏覽器端進行三維模型可視化展現,MTL文件是對應材質信息文件,為三維模型添加材質信息。最后對于IFC文件,直接通過命令行調用ifc-svg數據轉換接口,按照GUID將IFC文件轉化為對應SVG文件,用于瀏覽器端二維平面加載,實現將BIM模型文件轉化為相關聯的二維與三維數據。

1.2 二三維可視化

IFC文件解析完成后,可以在瀏覽器端通過WebGL技術對轉化后的文件進行加載渲染,利用JavaScript語言設計交互操作,完成二維、三維可視化展現。

對于三維可視化展示,在HTML頁面利用Threejs對OBJ、MTL文件進行加載,實現BIM模型三維可視化展示,具體三維模型渲染過程如圖3所示。

圖3 三維渲染流程圖

通過Threejs對OBJ文件和MTL文件加載,實現瀏覽器端BIM模型的展示,然后利用JavaScript語言加載屬性Json與樹形Json文件,實現BIM模型屬性、空間信息的展示。并利用JavaScript語言實現初始位置、剖切、全景漫游、長度測量、體積測量、面積測量和材質變換等交互操作,通過豐富的交互操作,增強對BIM模型的可視化管理。

對于二維可視化展示,主要針對BIM平面圖的渲染加載,利用SVG文件通過D3js進行加載展示,具體流程如圖4所示。

圖4 二維渲染流程圖

通過D3js對SVG文件進行加載,實現瀏覽器端二維平面圖的展示,然后利用JavaScript語言加載屬性Json與樹形Json文件,實現BIM模型屬性、空間信息的展示。利用JavaScript語言完成初始位置、面積測量、添加標注、文本檢索等交互操作。通過豐富的交互操作,不僅增強了二維平面圖的管理,而且更易于協同與共享。通過D3Js和ThreeJs在瀏覽器端進行二維與三維加載展示,為二三維聯動可視化的實現提供技術支持。

2 二三維聯動方法

通過對GIS下二三維聯動方法的研究,結合IFC標準,基于BIM可視化技術,提出了一種將統一ID映射和中心點坐標相結合的聯動方法,以實現BIM可視化下的數據聯動和交互聯動操作。

通過對IFC標準的研究發現,IFC標準根據唯一的ID和Name存儲BIM構件信息,因此針對IFC文件,通過調用IfcOpenShell相關函數,設計轉換方法,將IFC文件按照唯一的GUID轉化為OBJ和SVG文件,在聯動過程中,通過OBJ文件和SVG文件的GUID,進行一一映射,如圖5所示。

圖5 映射關系圖

統一ID映射方法可以實現數據聯動,但是對于交互操作中鼠標的旋轉、放大、縮小、移動等操作無法實現聯動效果,因此將中心點坐標法加以改進,將二維與三維坐標統一。

屏幕坐標為二維坐標,左上角為原點(0,0),而在WebGL中,坐標軸為三維坐標軸,以Canvas畫布中心點為原點,水平向右為x正軸,豎直向上為y軸正軸,沿屏幕向外為z軸正軸,x、y、z坐標范圍在[-1,1]之間,如圖6所示,二維屏幕上S點坐標,對應到三維坐標需要與中心點坐標進行計算,并將結果進行標準化處理,確保x、y、z的范圍在[-1,1]之間。二維坐標轉化為三維坐標如下:

(1)

(2)

圖6 坐標系轉換圖

將WebGL坐標轉換應用于中心點坐標公式中,設置三維畫布和二維畫布的寬和高,從而確定二維三維畫布中心點,通過改進的中心點坐標公式實現二維三維統一坐標,公式如下:

(3)

(4)

式中:Δx和Δy為(x,y)坐標相對于中心點坐標的相對坐標;width和height為對應二維或三維畫布的寬與高;n為二維和三維的比例大小。

3 二三維聯動可視化引擎實現

二三維聯動方法設計完成后,接下來設計可視化引擎的總體框架,以實現二三維聯動可視化引擎。

3.1 總體框架

二三維聯動可視化引擎總體框架如圖7所示。

圖7 總體框架圖

首先對需要展示的IFC文件進行加載,加載完成后,調用封裝好的解析接口,對IFC文件進行解析,將IFC文件存儲的幾何信息進行提取并保存為OBJ文件,將對應材質信息保存為MTL文件,用于BIM模型的三維可視化展示;將提取的平面信息保存為SVG文件,用于BIM模型的二維平面可視化展示,提取IFC文件存儲的層次信息與屬性信息,依次保存為樹形Json和屬性Json文件,用于瀏覽器端樹形結構和屬性信息的加載;最后是可視化展示,在瀏覽器端利用WebGL技術進行二維和三維可視化展示,利用二三維聯動方法,進行二三維聯動可視化展示。

3.2 二三維聯動可視化

二三維聯動可視化展示主要包括數據聯動和交互聯動。數據聯動主要是通過統一ID映射關系實現二三維信息的聯動,交互聯動主要是通過中心點坐標,實現二三維交互聯動。

數據聯動通過在文件解析時,將BIM模型的幾何信息與平面信息獲取后,根據對應構件實體GUID進行保存,然后對二維元組與三維模型信息根據GUID進行一一映射,完成二維數據與三維數據的關聯。

交互聯動通過設置三維和二維界面大小,從而確定二三維界面中心點,當鼠標進行點擊、旋轉、移動、放縮等操作時,根據鼠標距離當前二維或三維界面中心的長度,對應到三維或二維界面鼠標的位置,進行相同操作,確保了二三維交互聯動的準確性。

利用可視化管理過程中二三維可視化的優勢進行互補,對BIM模型進行二三維聯動可視化管理,實現在可視化端對BIM模型的全面管理。

4 實例分析

以根據本引擎進行二次開發的BIM消防可視化系統為例,利用萬科大樓某樓層模型IFC文件,進行二三維聯動可視化引擎的演示。加載文件后,系統調用解析接口,得到樹形結構和實體屬性Json文件、OBJ、MTL和SVG文件,如圖8所示。

圖8 IFC解析文件效果圖

在瀏覽器端進行加載展示,首先是三維可視化展示。三維可視化展示界面左側是三維BIM模型展示和工具條,右側是樹形結構和屬性信息展示。通過工具條對BIM模型進行交互操作,實現對BIM模型的可視化管理。通過樹形結構可以對某一類型構件實體進行選擇與查看操作,方便對構件的選取,選中構件或樹形結構某描述實體后,在三維模型中對應構件高亮顯示,并且在屬性框顯示對應實體所有屬性信息。三維可視化展示增強了對BIM模型的數據提取,豐富了三維可視化交互操作。具體三維展示界面如圖9所示。

圖9 三維模型展示效果圖

選擇二維可視化展示。二維可視化展示界面左側是二維平面圖與工具條,右側是樹形結構與屬性框,既可以通過工具條對二維平面圖進行交互操作,也可以根據樹形結構來對某一類型BIM實體進行查看。選中后對應構件實體高亮顯示,并在屬性框顯示對應實體所有屬性信息,不僅增強了使用性,而且加強了對二維平面圖的管理。二維平面展示具體效果如圖10所示。

圖10 二維平面展示效果圖

二三維聯動展示界面如圖11所示,(a)是三維展示,(b)是二維平面圖展示,(c)是樹形結構展示和屬性信息展示。

圖11 二三維聯動展示效果圖

數據聯動如圖12所示,當點擊二維、三維實體或樹形結構某類實體時,對應該實體在二維和三維界面居中高亮展示,并且在屬性框內,顯示該實體對應的屬性信息。

圖12 數據聯動效果圖

交互聯動如圖13所示,當在二維或三維界面進行旋轉、放大、縮小、移動等操作時,對應三維或者二維界面進行相同操作。實現了二三維數據聯動與交互聯動效果,證明了二三維聯動方法的正確性和二三維聯動可視化引擎的實用性。

圖13 交互聯動效果圖

5 結 語

本文詳細闡述了二三維聯動可視化引擎的設計過程,針對BIM可視化領域,基于IFC標準,設計了IFC文件解析方法,解決了二三維數據聯動問題;提出了一種統一ID映射與中心點坐標相結合的二三維聯動方法,解決了數據聯動和交互聯動的問題;利用WebGL技術,完成了二三維聯動可視化引擎的開發。

采用實際BIM數據對BIM可視化引擎進行了驗證,在可視化展現過程中,二維與三維可視化在瀏覽器端BIM模型信息加載完整,BIM模型可視化交互方式豐富。在二三維聯動可視化展示過程中,實現了二維平面信息與三維空間信息的數據聯動和交互聯動效果,解決了目前可視化系統在二維與三維信息上無法聯動的問題。通過該實例驗證了二三維聯動方法的正確性,同時驗證了可視化引擎的實用性。二三維聯動可視化引擎的實現,不僅增強了模型可視化的展現和二三維信息的聯系,還有助于BIM可視化技術的推廣和二三維聯動方法的應用。

本文研究僅限于IFC文件的開發和管理,目前建模軟件大多以Revit文件存儲,對Revit文件展示值得進一步研究。針對多層BIM模型,無法實現三維模型按樓層拆分和二維平面按樓層存儲等功能,后期將對BIM項目樓層拆分進行深入研究。

猜你喜歡
引擎可視化信息
基于CiteSpace的足三里穴研究可視化分析
基于Power BI的油田注水運行動態分析與可視化展示
云南化工(2021年8期)2021-12-21 06:37:54
基于CGAL和OpenGL的海底地形三維可視化
“融評”:黨媒評論的可視化創新
傳媒評論(2019年4期)2019-07-13 05:49:14
藍谷: “涉藍”新引擎
商周刊(2017年22期)2017-11-09 05:08:31
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
無形的引擎
河南電力(2015年5期)2015-06-08 06:01:46
基于Cocos2d引擎的PuzzleGame開發
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
One?。牛睿纾椋睿濉。蹋澹妫糁皇O乱粋€引擎
主站蜘蛛池模板: 97国产在线视频| 又猛又黄又爽无遮挡的视频网站| 不卡午夜视频| 亚洲女同一区二区| 国产高清又黄又嫩的免费视频网站| 在线观看免费人成视频色快速| 国产成人高清在线精品| 亚洲妓女综合网995久久| 亚洲最大福利网站| 国产黑丝视频在线观看| 在线观看精品自拍视频| 人人爽人人爽人人片| 亚洲人成网址| 亚洲精品无码在线播放网站| 性做久久久久久久免费看| 国产麻豆精品在线观看| 国产一级无码不卡视频| 国产精品嫩草影院av| www亚洲天堂| 中国一级毛片免费观看| 中文字幕不卡免费高清视频| A级毛片无码久久精品免费| 2020精品极品国产色在线观看| 欧美成人精品在线| 色婷婷狠狠干| 狠狠干综合| 色婷婷国产精品视频| 一级毛片在线播放免费| 免费无码在线观看| 国产成人AV男人的天堂| 日本不卡免费高清视频| 熟妇人妻无乱码中文字幕真矢织江| 五月天综合网亚洲综合天堂网| 日本久久久久久免费网络| 国产免费网址| 亚洲精品无码AⅤ片青青在线观看| 久久99蜜桃精品久久久久小说| 欧美a级在线| 91麻豆精品视频| 在线免费观看AV| 一级香蕉视频在线观看| 成人午夜亚洲影视在线观看| 91精品视频网站| 高清国产在线| 久久这里只有精品国产99| 在线99视频| 国产97视频在线观看| 国产正在播放| 国产91丝袜| jizz在线免费播放| 成年A级毛片| 精品国产香蕉在线播出| 亚洲综合色区在线播放2019| 国产黄色片在线看| 国产真实乱子伦精品视手机观看 | 欧美色亚洲| 国产自在线拍| 亚洲侵犯无码网址在线观看| 国产人人乐人人爱| 亚洲精品视频网| 久久精品中文字幕免费| 亚洲日韩高清在线亚洲专区| 精品无码一区二区三区在线视频| 99精品这里只有精品高清视频| 99精品视频九九精品| 成人日韩视频| 被公侵犯人妻少妇一区二区三区| 欧美色视频日本| 亚洲第一中文字幕| 无码高潮喷水在线观看| 999精品视频在线| 毛片网站在线看| 亚洲欧美日本国产综合在线| 久久精品66| 国产成人精品亚洲日本对白优播| 啦啦啦网站在线观看a毛片| 久久99国产视频| 日本一区中文字幕最新在线| 色吊丝av中文字幕| 中文字幕无码中文字幕有码在线| 2024av在线无码中文最新| 国产一在线|