• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于IFC與WebGL的水利工程BIM輕量化應(yīng)用研究

      2020-11-23 02:11:42王???/span>黃華東
      中國(guó)農(nóng)村水利水電 2020年11期
      關(guān)鍵詞:輕量化可視化解析

      杜 政,王???,談 震,黃華東

      (1.南瑞集團(tuán)(國(guó)網(wǎng)電力科學(xué)研究院)有限公司,南京 211106;2.江蘇省水利勘測(cè)設(shè)計(jì)研究院有限公司,江蘇 揚(yáng)州 225009)

      水利工程建筑物選型獨(dú)特,技術(shù)復(fù)雜,設(shè)計(jì)效率低,且參建各方信息共享水平低,通過引入BIM技術(shù)建立水利工程信息模型可以有效解決這些問題[1],目前BIM技術(shù)主要應(yīng)用于水利工程的設(shè)計(jì)階段[2],國(guó)內(nèi)水利水電行業(yè)設(shè)計(jì)單位采用不同廠家的協(xié)同設(shè)計(jì)基礎(chǔ)平臺(tái),主要有歐特克(Autodesk)、奔特力(Bentley)、達(dá)索(Dassault)等平臺(tái)[3],導(dǎo)致數(shù)據(jù)格式眾多,很難以一種統(tǒng)一的格式進(jìn)行管理,從而導(dǎo)致BIM應(yīng)用過程中普遍存在數(shù)據(jù)交互效率低的問題[4]。而由buildingSMART組織所推進(jìn)的工業(yè)基礎(chǔ)類(industry foundation class,IFC)已成為BIM數(shù)據(jù)描述和交換的國(guó)際標(biāo)準(zhǔn)[5],基于IFC能夠以標(biāo)準(zhǔn)化的方式構(gòu)建、存儲(chǔ)和交換BIM數(shù)據(jù),橫跨建筑生命期的各個(gè)階段,在不同參與方、不同專業(yè)和應(yīng)用軟件之間傳遞數(shù)據(jù)[6]。同時(shí)上述平臺(tái)是桌面端的建模軟件,無法滿足用戶隨時(shí)隨地查看模型及其屬性的需求,也無法滿足用戶在移動(dòng)端查看的需求[7]。隨著HTML5和WebGL等技術(shù)的發(fā)展,為B/S 架構(gòu)的BIM輕量化帶來了新的技術(shù)力量,通過BIM輕量化讓BIM可視化脫離專業(yè)應(yīng)用軟件,實(shí)現(xiàn)BIM模型的WEB端瀏覽和交互操作[8]。本文將基于IFC標(biāo)準(zhǔn)與WebGL技術(shù)開展水利工程BIM輕量化應(yīng)用研究。

      1 總體思路

      本文的研究核心是基于IFC標(biāo)準(zhǔn)與WebGL技術(shù)開展水利工程BIM輕量化應(yīng)用的技術(shù)研究與應(yīng)用開發(fā),實(shí)現(xiàn)水利工程BIM數(shù)據(jù)的標(biāo)準(zhǔn)化、輕量化與可視化。BIM數(shù)據(jù)標(biāo)準(zhǔn)化通過引入IFC標(biāo)準(zhǔn)實(shí)現(xiàn)水利工程多源異構(gòu)BIM數(shù)據(jù)的集成,并結(jié)合水利工程模型分類與編碼相關(guān)標(biāo)準(zhǔn)對(duì)IFC標(biāo)準(zhǔn)進(jìn)行擴(kuò)展,從而實(shí)現(xiàn)水利工程BIM數(shù)據(jù)的標(biāo)準(zhǔn)化。BIM數(shù)據(jù)輕量化基于XBIM實(shí)現(xiàn)IFC 文件的解析與輕量化,利用數(shù)模分離原理將IFC文件拆分為三維幾何數(shù)據(jù)與屬性數(shù)據(jù),實(shí)現(xiàn)模型的信息提取與格式轉(zhuǎn)換,通過微觀層面的參數(shù)化幾何描述與宏觀層面的相似性圖元合并兩種優(yōu)化方法實(shí)現(xiàn)三維幾何數(shù)據(jù)的輕量化處理。BIM數(shù)據(jù)可視化基于WebGL技術(shù)與WeXplorer框架開發(fā)Web-3D可視化應(yīng)用功能模塊,通過多重LOD、遮擋剔除與批量繪制多種技術(shù)融合提升模型的三維渲染效果,同時(shí)開發(fā)縮放、旋轉(zhuǎn)、透明、剖切、漫游、標(biāo)簽、測(cè)量等功能,實(shí)現(xiàn)水利工程各類用戶與BIM模型的交互。通過BIM數(shù)據(jù)標(biāo)準(zhǔn)化、輕量化與可視化方面的研究,最終完成水利工程BIM模型輕量化應(yīng)用系統(tǒng)研發(fā)。原理框架圖如圖1。

      圖1 原理框架圖Fig.1 The schematic frame diagram

      2 關(guān)鍵技術(shù)

      2.1 IFC標(biāo)準(zhǔn)擴(kuò)展技術(shù)

      IFC標(biāo)準(zhǔn)是BIM 數(shù)據(jù)描述和交換的國(guó)際標(biāo)準(zhǔn),基于IFC能夠以標(biāo)準(zhǔn)化的方式構(gòu)建、存儲(chǔ)和交換BIM數(shù)據(jù),橫跨建筑全生命周期的各個(gè)階段,在不同參與方、不同專業(yè)和應(yīng)用軟件之間傳遞數(shù)據(jù),所有專業(yè)軟件創(chuàng)建的BIM 模型都可以轉(zhuǎn)換為IFC格式文件輸出[9]。IFC 模型結(jié)構(gòu)由資源層、核心層、共享層與領(lǐng)域?qū)?4 個(gè)層次組成(如圖2)。

      圖2 IFC4標(biāo)準(zhǔn)體系結(jié)構(gòu)Fig.2 IFC4 schema structure

      最底層的資源層定義 21 類可重復(fù)利用的實(shí)體與類型,包括幾何資源、屬性資源、材料資源等,資源層的實(shí)體不能獨(dú)立存在,僅供高層次調(diào)用。核心層定義 IFC 模型的基本結(jié)構(gòu)、基礎(chǔ)關(guān)系和公用概念,組織下層分散的基礎(chǔ)信息,形成 IFC 模型的基本結(jié)構(gòu)。共享層提供通用性的對(duì)象與關(guān)系,包括建筑服務(wù)元素、組件元素、建筑元素、管理元素、設(shè)備元素等,可供領(lǐng)域?qū)佣鄠€(gè)領(lǐng)域使用。領(lǐng)域?qū)佣x特定專業(yè)領(lǐng)域所需的實(shí)體對(duì)象,如電氣領(lǐng)域的電纜、變壓器、電氣設(shè)備等。[10]。

      IFC標(biāo)準(zhǔn)是一個(gè)逐步更新發(fā)展的過程,歷經(jīng)6次更新,每次升級(jí)都擴(kuò)充了大量IFC模型實(shí)體滿足工程需要。目前,IFC 標(biāo)準(zhǔn)主要應(yīng)用于建筑工程領(lǐng)域,缺少水利工程領(lǐng)域特有構(gòu)件和屬性描述[11]。IFC標(biāo)準(zhǔn)擴(kuò)展方法是解決這個(gè)問題的有效手段,IFC具有IFC實(shí)體擴(kuò)展、IFC屬性集擴(kuò)展與基于IFCProxy實(shí)體擴(kuò)展3種擴(kuò)展方式,其中IFC實(shí)體擴(kuò)展通過新增實(shí)體或?qū)嶓w屬性擴(kuò)展 IFC 的描述范圍,IFC屬性集擴(kuò)展通過新增或修改IFC 標(biāo)準(zhǔn)中的屬性集提升實(shí)體描述的精細(xì)度、基于IFCProxy實(shí)體擴(kuò)展通過實(shí)例化通用實(shí)體 IFCProxy的方式描述 IFC 中未定義的對(duì)象,實(shí)現(xiàn)自定義信息模型[12]。上述3種擴(kuò)展方法各有優(yōu)缺點(diǎn),表1從易用性、兼容性、效率性與安全性四個(gè)方面對(duì)3種擴(kuò)展方法進(jìn)行了對(duì)比,說明了3種擴(kuò)展方式各自的適用性。對(duì)于需要進(jìn)行大量擴(kuò)展的水利行業(yè)應(yīng)用來說,可采用IFC實(shí)體擴(kuò)展方式,運(yùn)行效率較高,若得到行業(yè)認(rèn)可將會(huì)應(yīng)用于新的IFC版本中。

      2.2 IFC文件解析與輕量化技術(shù)

      由于IFC文件本身不支持WebGL的讀取與加載,在實(shí)際應(yīng)用中我們需要將 IFC 格式的文件解析成WebGL支持的文件格式,同時(shí)IFC文件信息全面而詳實(shí),導(dǎo)致模型數(shù)據(jù)量較大,對(duì)瀏覽器端的數(shù)據(jù)處理性能要求較高[13]。因此本文需要對(duì)IFC文件進(jìn)行模型的解析與輕量化,然后基于WebGL實(shí)現(xiàn)模型的快速讀取與加載。IFC文件可以通過文本編輯器查看和編輯,文本內(nèi)容包括文件頭部分和數(shù)據(jù)部分。文件頭部分包括文件本身信息,例如文件描述、文件名稱、IFC 標(biāo)準(zhǔn)版本等,數(shù)據(jù)部分是文件的核心,包括了項(xiàng)目的所有建筑模型信息[14]。IFC文件解析主要對(duì)IFC 文件數(shù)據(jù)段內(nèi)容進(jìn)行訪問與處理,IFC 標(biāo)準(zhǔn)發(fā)布時(shí)均發(fā)布對(duì)應(yīng)擴(kuò)展名為.exp 的模式文件,基于該文件可進(jìn)行 IFC 數(shù)據(jù)解析程序的設(shè)計(jì),實(shí)現(xiàn)IFC 文件的內(nèi)容遍歷、查詢以及信息提取。數(shù)據(jù)處理以構(gòu)件對(duì)象的實(shí)體為主,通過遍歷所有對(duì)象的實(shí)體信息獲得組成建筑信息模型的全部對(duì)象,通過實(shí)體對(duì)象的引用關(guān)系獲得與對(duì)象關(guān)聯(lián)的全部信息數(shù)據(jù),幾何信息經(jīng)過幾何布爾運(yùn)算、參數(shù)化轉(zhuǎn)片面和三角化等幾何數(shù)據(jù)處理過程,才能夠轉(zhuǎn)化為 WebGL 圖形引擎可以繪制的三維可視化數(shù)據(jù),最后通過數(shù)據(jù)整理完成IFC文件解析[15]。

      表1 3種擴(kuò)展方式的對(duì)比Tab.1 Comparison of the three extensions

      BIM模型輕量化是指通過相關(guān)算法對(duì)模型中的屬性信息、幾何信息等內(nèi)容進(jìn)行壓縮、簡(jiǎn)化等操作,目的是降低BIM源文件的數(shù)據(jù)量,保證BIM數(shù)據(jù)的精確性,實(shí)現(xiàn)BIM數(shù)據(jù)的無損壓縮[16]。BIM模型輕量化的關(guān)鍵環(huán)節(jié)是幾何信息的簡(jiǎn)化,可以從微觀層面與宏觀層面兩個(gè)方面進(jìn)行,微觀層面是從單個(gè)構(gòu)件著手,通過參數(shù)化幾何描述、三角化幾何描述等方式實(shí)現(xiàn)幾何信息的簡(jiǎn)化表達(dá),宏觀層面則是通過各類數(shù)學(xué)算法對(duì)整個(gè)模型的幾何信息進(jìn)行簡(jiǎn)化處理[17]。比如利用構(gòu)件幾何復(fù)用算法將具有相同形狀的同類型構(gòu)件的幾何信息進(jìn)行唯一性表達(dá),然后由各自的不同位置信息確定每個(gè)構(gòu)件的空間坐標(biāo)位置,同一類型的構(gòu)件只需存儲(chǔ)一份幾何數(shù)據(jù),從而實(shí)現(xiàn)BIM數(shù)據(jù)的無損壓縮[18]。模型輕量化示意圖見圖3。

      圖3 模型輕量化示意圖Fig.3 Diagram of model lightweighted

      2.3 WebGL可視化技術(shù)

      WebGL技術(shù)是由Khronos提出的新的Web3D圖形規(guī)范,它是一項(xiàng)在瀏覽器中繪制、顯示3D圖形并支持交互的技術(shù),其允許開發(fā)者在瀏覽器中直接調(diào)用圖形硬件進(jìn)行3D可視化的加速[19]。WebGL基于Open GLES2.0標(biāo)準(zhǔn)和OpenGL著色語言GLSL,是一個(gè)免費(fèi)的、跨平臺(tái)的Web端3D圖形渲染的API,結(jié)合HTML5的標(biāo)簽和JavaScript可以在瀏覽器上進(jìn)行三維模型的繪制,并可通過計(jì)算機(jī)顯卡進(jìn)行3D加速渲染[20]。和以往用戶需要依賴于插件來實(shí)現(xiàn)3D動(dòng)畫效果的展示不同,WebGL不需要任何插件即可實(shí)現(xiàn)Web端的三維展示,使傳統(tǒng)的三維可視化程序從桌面端到瀏覽器端成為了可能。目前,WebGL技術(shù)在三維協(xié)同設(shè)計(jì)、網(wǎng)頁3D游戲、虛擬現(xiàn)實(shí)等多個(gè)領(lǐng)域得到了應(yīng)用。

      為了讓W(xué)ebGL 具有充分的靈活性,原生的WebGL API里面包括很多復(fù)雜的底層內(nèi)容,因此利用原生的WebGL API進(jìn)行開發(fā)時(shí),需要具備扎實(shí)的計(jì)算機(jī)圖形學(xué)知識(shí),同時(shí)由于開發(fā)者對(duì)WebGL技術(shù)有著不同的需求,不同的WebGL應(yīng)用又存在許多重復(fù)功能,直接利用WebGL底層程序進(jìn)行開發(fā)既費(fèi)時(shí)又費(fèi)力。WebGL應(yīng)用開發(fā)框架應(yīng)運(yùn)而生,目前常用的框架有o3djs、Scene.js、Three.js、GLGE、Spider.js、Copperlicht、CubicVR 等,他們對(duì)WebGL底層部分功能進(jìn)行封裝,避免每次開發(fā)都做很多重復(fù)性的復(fù)雜底層操作,減小了WebGL應(yīng)用的開發(fā)難度和開發(fā)成本,縮短了開發(fā)周期,其中Three.js 框架使用最為廣泛,它的復(fù)雜度較低,簡(jiǎn)單、直觀,屬于輕量級(jí)的 3D 框架,提供了豐富的 3D 圖形渲染功能,可以方便快捷的創(chuàng)建包括攝影機(jī)、光源、材質(zhì)等各種對(duì)象的交互式三維場(chǎng)景。Three.js 框架在進(jìn)行 WebGL 圖形渲染前,需要完成場(chǎng)景的構(gòu)建,圖4完整展示了 Three.js 的渲染流程,首先定義一個(gè)場(chǎng)景,然后在場(chǎng)景中定義燈光效果和相機(jī)效果,之后需要?jiǎng)?chuàng)建模型對(duì)象的網(wǎng)格,同時(shí)選擇相應(yīng)的材質(zhì)信息,最后 Three.js 的渲染器根據(jù)場(chǎng)景中的相關(guān)數(shù)據(jù)以及選取的著色器程序,在屏幕上繪制出最終的圖形。

      圖4 Three.js 的繪制流程Fig.4 The drawing process of Three.js

      3 應(yīng)用開發(fā)與實(shí)踐

      3.1 水利工程IFC標(biāo)準(zhǔn)擴(kuò)展

      水利工程項(xiàng)目規(guī)模龐大,涉及到的專業(yè)復(fù)雜多樣,生命周期長(zhǎng),參與方眾多,且建筑物眾多且形狀各異,數(shù)據(jù)信息繁雜,統(tǒng)一水利工程信息模型數(shù)據(jù)標(biāo)準(zhǔn)是實(shí)現(xiàn)水利工程信息模型共享的關(guān)鍵[21]。IFC 標(biāo)準(zhǔn)主要應(yīng)用于建筑工程領(lǐng)域,缺少水利工程領(lǐng)域特有構(gòu)件和屬性描述。因此,基于IFC 構(gòu)建水電工程信息模型必須對(duì) IFC 標(biāo)準(zhǔn)進(jìn)行相應(yīng)擴(kuò)展。本文參考《水利水電工程設(shè)計(jì)信息模型分類和編碼標(biāo)準(zhǔn)》,借助Revit API開發(fā)了 IFC 定義設(shè)置功能,用戶可進(jìn)行任意構(gòu)件的 IFC 定義,同時(shí)可以建立構(gòu)件之間的關(guān)聯(lián)關(guān)系,以長(zhǎng)距離引供水工程為例,針對(duì)工程運(yùn)維管理應(yīng)用需要,實(shí)現(xiàn)了引供水工程IFC模型的分類與信息編碼。長(zhǎng)距離引供水工程樣表見表2。

      表2 長(zhǎng)距離引供水工程樣表Tab.2 Long-distance water supply project sample form

      3.2 IFC文件的解析與輕量化

      IFC文件結(jié)構(gòu)復(fù)雜、信息豐富,從底層對(duì) IFC文件進(jìn)行解析需要深入研究Express 標(biāo)準(zhǔn)語言,耗時(shí)費(fèi)力。為了實(shí)現(xiàn)IFC文件的靈活解析,本文選用了Xbim工具包作為解析工具,讀取 IFC 格式文件的模型信息,以實(shí)現(xiàn)到自定義文件格式的保存。Xbim 工具包是一個(gè)開源的軟件開發(fā)BIM工具,支持 BuildingSmart 數(shù)據(jù)模型。Xbim 允許開發(fā)人員以 IFC格式讀取,創(chuàng)建和查看BIM數(shù)據(jù),完全支持幾何,拓?fù)洳僮骱涂梢暬?/p>

      Xbim主要有Xbim.Essentials、Xbim.Exchange、Xbim.Geometry、Xbim.WindowsUI、Xbim.WeXplorer等組件庫,我們借助Xbim.Essentials來進(jìn)行IFC文件的讀寫,將 IFC格式文件信息解析到model對(duì)象當(dāng)中,然后借助Xbim.Geometry將model當(dāng)中的幾何數(shù)據(jù)讀取出來并保存在mesh對(duì)象當(dāng)中,完成IFC文件屬性數(shù)據(jù)和幾何數(shù)據(jù)的解析,實(shí)現(xiàn)IFC文件的數(shù)模分離。IFC文件輕量化主要是從微觀層面和宏觀層面對(duì)幾何數(shù)據(jù)進(jìn)行簡(jiǎn)化與壓縮,在微觀層面通過參數(shù)化幾何描述、三角化幾何描述等方式實(shí)現(xiàn)幾何信息的簡(jiǎn)化表達(dá),在宏觀層面利用構(gòu)件幾何復(fù)用算法實(shí)現(xiàn)相似性圖元的合并。在Xbim中我們利用Xbim.Essential與Xbim. Geometry來對(duì)IFC文件進(jìn)行優(yōu)化和壓縮,創(chuàng)建支持WebGL能加載的wexBIM文件。以某個(gè)泵站樞紐工程的IFC文件為例,初始IFC文件大小為95 M,輕量化后的文件只有15 M左右,文件大小減少了85%左右,有助于提高瀏覽器端的加載效率和展示速度。數(shù)據(jù)流程圖見圖5。

      圖5 數(shù)據(jù)流程圖Fig.5 Data flow chart

      3.3 Web-3D可視化應(yīng)用開發(fā)

      Web-3D可視化應(yīng)用開發(fā)主要分為三維可視化框架搭建與模型文件的解析讀取兩步,首先運(yùn)行JavaScript程序,調(diào)用WebGL的相關(guān)方法; 然后調(diào)用頂點(diǎn)著色器和片元著色器在顏色緩沖區(qū)內(nèi)進(jìn)行繪制; 最后在瀏覽器上自動(dòng)顯示。Xbim工具包提供基于WebGL技術(shù)的三維可視化框架WeXplorer,使用預(yù)處理的wexBIM文件處理Web上的IFC數(shù)據(jù)的可視化。WeXplorer框架主要通過xViewer類來加載和呈現(xiàn)wexBIM格式的IFC模型,xViewer使用WebGL技術(shù)進(jìn)行硬件加速的3D渲染,同時(shí)提供Xbrowser類實(shí)現(xiàn)JSON COBieLite數(shù)據(jù)的可視化。

      本文基于WebGL技術(shù)開發(fā)BIM三維可視化應(yīng)用功能模塊,借助WeXplorer框架實(shí)現(xiàn)輕量化模型的展示,并通過多重LOD、遮擋剔除與批量繪制多種技術(shù)融合提升模型的三維渲染效果,同時(shí)開發(fā)縮放、旋轉(zhuǎn)、透明、剖切、漫游、標(biāo)簽、測(cè)量等功能,實(shí)現(xiàn)用戶與模型的交互?;赪ebGL技術(shù)跨平臺(tái)的特性,Web-3D可視化應(yīng)用可運(yùn)行于Firefox、Chrome等現(xiàn)代瀏覽器,同時(shí)iOS、Android移動(dòng)設(shè)備上也可以運(yùn)行,圖6、7為Chrome瀏覽器運(yùn)行界面。圖8為IPad移動(dòng)設(shè)備運(yùn)行界面。

      圖6 模型可視化界面Fig.6 Model visualization interface

      圖7 模型放大與構(gòu)件屬性查看界面Fig.7 Model amplification and widget properties view interface

      圖8 IPad運(yùn)行界面Fig.8 IPad run interface

      4 結(jié) 語

      本文從水利工程BIM數(shù)據(jù)的標(biāo)準(zhǔn)化、輕量化與可視化3個(gè)方面開展BIM輕量化應(yīng)用研究。基于IFC標(biāo)準(zhǔn)實(shí)現(xiàn)了BIM數(shù)據(jù)格式的統(tǒng)一,針對(duì)IFC標(biāo)準(zhǔn)缺少水利工程領(lǐng)域特有構(gòu)件和屬性描述的問題,以引供水工程為例,通過Revit API二次開發(fā)實(shí)現(xiàn)了水利工程IFC標(biāo)準(zhǔn)擴(kuò)展。同時(shí)采用開源的Xbim工具包實(shí)現(xiàn)了IFC文件的解析與輕量化,并基于WebGL技術(shù)完成Web-3D可視化應(yīng)用的開發(fā),為水利工程BIM輕量化應(yīng)用提供了一種實(shí)用有效的方法,下一步工作重點(diǎn)是基于水利工程BIM輕量化應(yīng)用構(gòu)建水利工程全生命周期系統(tǒng),推進(jìn)BIM技術(shù)在水利工程的應(yīng)用。

      猜你喜歡
      輕量化可視化解析
      基于CiteSpace的足三里穴研究可視化分析
      汽車輕量化集成制造專題主編
      基于Power BI的油田注水運(yùn)行動(dòng)態(tài)分析與可視化展示
      云南化工(2021年8期)2021-12-21 06:37:54
      三角函數(shù)解析式中ω的幾種求法
      基于CGAL和OpenGL的海底地形三維可視化
      “融評(píng)”:黨媒評(píng)論的可視化創(chuàng)新
      一種輕量化自卸半掛車結(jié)構(gòu)設(shè)計(jì)
      睡夢(mèng)解析儀
      電競(jìng)初解析
      商周刊(2017年12期)2017-06-22 12:02:01
      相機(jī)解析
      普宁市| 巴林左旗| 彭水| 定兴县| 中西区| 仙桃市| 万盛区| 瑞金市| 福贡县| 丽水市| 绥棱县| 惠水县| 南平市| 玉门市| 苏尼特左旗| 汉源县| 封丘县| 綦江县| 英吉沙县| 麦盖提县| 万载县| 东光县| 贵定县| 六枝特区| 沁阳市| 阜城县| 祥云县| 扎兰屯市| 亳州市| 泗水县| 忻州市| 六安市| 乾安县| 宁阳县| 阿城市| 武隆县| 双峰县| 克什克腾旗| 大洼县| 湘乡市| 鄂托克前旗|