在數(shù)字孿生和仿真研究過程中,會(huì)產(chǎn)生大量和三維空間相關(guān)的數(shù)值信息,比如設(shè)備外觀的掃描數(shù)據(jù)、地形掃描數(shù)據(jù)、生產(chǎn)設(shè)備溫度場/壓力場、流體的速度場、流體擴(kuò)散,以及各種仿真數(shù)據(jù):速度,壓力,應(yīng)力,溫度等。
這些數(shù)據(jù)的特點(diǎn)是數(shù)量大,使用二維圖表呈現(xiàn)不直觀,無法直觀呈現(xiàn)數(shù)據(jù)的三維分布和數(shù)據(jù)隨時(shí)間的變化。
圖撲軟件是基于 WebGL 的三維可視化引擎,在 WebGL 基礎(chǔ)上封裝了基本的三維模型創(chuàng)建、呈現(xiàn)的 API。同時(shí)還封裝了豐富的數(shù)學(xué)運(yùn)算庫,涵蓋多維變換,幾何計(jì)算等。
圖撲 SDK 開放靈活的架構(gòu)也使得用戶開發(fā)擴(kuò)展功能非常方便,比如熱力圖(體)插件,流場粒子展示插件,體繪制插件等。強(qiáng)大靈活的 3D 引擎可以讓用戶輕松實(shí)現(xiàn)三維模型的呈現(xiàn)編輯功能。用戶無需關(guān)心繁瑣復(fù)雜的 WebGL 操作,可以將精力放到應(yīng)用的業(yè)務(wù)層,節(jié)省開發(fā)費(fèi)用,加快開發(fā)進(jìn)程,通過三維動(dòng)態(tài)直觀展示方式,挖掘隱藏的信息內(nèi)容,提升應(yīng)用價(jià)值。
本文針對以下 6 種呈現(xiàn)方式討論使用圖撲 SDK 實(shí)現(xiàn)的方法:
模型表面貼圖
模型三維網(wǎng)格
粒子流貼圖
粒子流體
體繪制
點(diǎn)云
以下介紹的方法中,為了提高前端的性能和用戶體驗(yàn),涉及到大量數(shù)據(jù)處理的操作都可以放到服務(wù)器上實(shí)現(xiàn)。前端只負(fù)責(zé)少量運(yùn)算和效果展示。
下圖是實(shí)現(xiàn)整個(gè)系統(tǒng)的架構(gòu):
模型表面貼圖
對于需要展示表面數(shù)據(jù)的應(yīng)用,比如設(shè)備表面的溫度,壓力等,輸入數(shù)據(jù)是模型表面的點(diǎn)坐標(biāo)和數(shù)據(jù)值的集合,比如 x, y, z, value。實(shí)現(xiàn)的方法:根據(jù)模型上每一個(gè)點(diǎn) value 值計(jì)算出此點(diǎn)貼圖的 UV 值。實(shí)現(xiàn)原理圖如下:
有以下兩種情況需要用插值算法重新生成數(shù)據(jù):
模型表面貼圖
模型三維網(wǎng)格
下圖是實(shí)現(xiàn)的原理。主要增加了使用反距離加權(quán)法重新生成數(shù)據(jù)。由于這一步計(jì)算量大,需要放到服務(wù)器上,作為數(shù)據(jù)預(yù)處理功能實(shí)現(xiàn)。
模型三維網(wǎng)格
三維網(wǎng)格展示在一個(gè)二維面上的屬性在上一節(jié) “模型表面貼圖” 已介紹過。這里主要介紹三維網(wǎng)格展示三維信息,比如三維速度場,三維溫度場等。
由于是一個(gè)三維的體,無法用貼圖的方式給出網(wǎng)格的顏色信息。此時(shí)需要用插值算法計(jì)算出規(guī)則空間網(wǎng)格的場信息。比如在 x,y, z 整數(shù)值的點(diǎn)插值采樣。將采樣獲得的空間場信息以材質(zhì)的方式傳給圖撲 SDK。SDK 在渲染每一個(gè)點(diǎn)的時(shí)候,根據(jù)點(diǎn)周圍的空間 4 個(gè)點(diǎn)做插值擬合獲得屬性值,并根據(jù)屬性值范圍計(jì)算出渲染的顏色。具體流程參照下圖:
上方為基于鉆孔數(shù)據(jù)的三維地質(zhì)模型可視化(點(diǎn)擊文字跳轉(zhuǎn)查看智慧煤礦往期回顧),智慧礦山是一個(gè)匯聚了多學(xué)科、多主題、多維空間信息的復(fù)雜系統(tǒng),是在礦山地表和地下開采礦產(chǎn)資源的工程活動(dòng)中所涉及的各種靜、動(dòng)態(tài)信息的全部數(shù)字化管理,智能分析,可視化展示,從而達(dá)到降本增效,實(shí)現(xiàn)企業(yè)利益的最大化。
粒子流貼圖
對于需要在一個(gè)面上展示的流體場,比如風(fēng)場,水流場,壓力場等,需要以動(dòng)態(tài)的方式呈現(xiàn),可以使用圖撲粒子插件實(shí)現(xiàn)。
系統(tǒng)基本原理如下圖:二維流體場信息作為貼圖資源傳給圖撲 SDK。SDK 里使用貼圖保存粒子的位置信息,利用流體場和粒子位置,計(jì)算出下一幀的粒子位置。然后融合上一幀的輸出和當(dāng)前輸出,實(shí)現(xiàn)粒子的移動(dòng)尾跡效果。
圖撲三維粒子插件可以實(shí)現(xiàn)和二維粒子流相似的參數(shù)調(diào)節(jié):
粒子的大小
粒子的形狀
粒子的流速
粒子數(shù)量
現(xiàn)實(shí)的閾值
仿真精度等
粒子流體
對于需要展示三維空間的矢量場,比如風(fēng)場,速度場等,需要以動(dòng)態(tài)的方式呈現(xiàn)??梢允褂脠D撲粒子插件實(shí)現(xiàn)。插件的主要輸入數(shù)據(jù)是三維矢量場。它是在服務(wù)器端通過對矢量場按照固定間隔采樣擬合獲得。
圖撲三維粒子插件可以實(shí)現(xiàn)和二維粒子流相似的參數(shù)調(diào)節(jié):
粒子的大小
粒子的形狀
粒子的流速
粒子數(shù)量
現(xiàn)實(shí)的閾值等
體繪制
體繪制是一種將三維空間中的體數(shù)據(jù),渲染到二維圖形上的技術(shù)。體繪制可以在二維平面上展示出三維空間中的數(shù)據(jù),可直觀窺探物體內(nèi)部細(xì)節(jié),因此可應(yīng)用于各種電、熱、磁場的仿真,水污染擴(kuò)散仿真、海洋遙感三維可視化、醫(yī)學(xué)影像(CT) 展示等。
電力行業(yè)中,變壓器是一種重要的設(shè)備,變壓器繞組的溫度分布,特別是熱點(diǎn)溫度,是制約變壓器運(yùn)行安全和使用壽命的重要因素。本案例中通過體繪制的方式展示變壓器繞組溫度場。首先通過有限元仿真,對變壓器內(nèi)部的熱傳導(dǎo)過程模擬,最終得到變壓器內(nèi)部的溫度分布規(guī)律。將有限元仿真出的溫度數(shù)據(jù),通過插值的方法獲得整個(gè)繞組的溫度切片。這里有多種插值算法,如反距離加權(quán)法、克里金法、自然鄰域法、樣條函數(shù)法等。這里采用反距離加權(quán)算法。
體繪制的算法有多種:光線投射算法、拋雪球算法、錯(cuò)切變形算法。三種算法相比較,光線投射算法計(jì)算量相對較大,但是繪制的圖像質(zhì)量較高,有利于保留圖像細(xì)節(jié),這里我們選用光線投射算法。為了保證渲染速度,我們要對光線投射算法進(jìn)行了優(yōu)化,減少不必要計(jì)算量。通過優(yōu)化,可以做到在有非集成顯卡的普通 PC 機(jī)上,輕松實(shí)時(shí)渲染數(shù)百萬以上點(diǎn)的有限元分析結(jié)果。
此外,可以對渲染結(jié)果進(jìn)行裁切,展示繞組任何切面的溫度分布情況。
以下案例是體繪制在 CT 可視化領(lǐng)域的應(yīng)用:
點(diǎn)云
圖撲引擎內(nèi)置對點(diǎn)云的支持。支持的點(diǎn)數(shù)量可達(dá)千萬。點(diǎn)云里每個(gè)點(diǎn)的貼圖/形狀可配置。
點(diǎn)云可以用于展示模型本身或者模型表面的屬性信息,比如壓力和溫度等。
對于激光點(diǎn)云數(shù)據(jù),通常一個(gè)點(diǎn)的信息包含三維坐標(biāo)和顏色值,比如 x,y,z,r,g,b 六個(gè)字段。將三維坐標(biāo)和顏色信息傳給圖撲點(diǎn)云可以直接展示模型。對于大場景或高精度的點(diǎn)云模型,由于點(diǎn)數(shù)據(jù)量巨大,無法全部顯示。可以采用空間劃分和 LOD 技術(shù),生成不同分辨率的點(diǎn)云模型,按需加載。需要展示局部高精度模型時(shí),只加載局部高精度模型信息。
對于需要展示變化過程需求,圖撲引擎支持定制插件(shader),通過將多個(gè)時(shí)間點(diǎn)的顏色信息傳給 shader,shader 根據(jù)時(shí)間進(jìn)度信息插值計(jì)算出某一時(shí)間t的顏色,進(jìn)行渲染。JavaScript 主程序循環(huán)更新運(yùn)行時(shí)間t。這樣的優(yōu)點(diǎn)是主要的計(jì)算量放到顯卡,仿真進(jìn)度(時(shí)間)可以靈活調(diào)節(jié),整個(gè)展示過程流暢不卡頓。流程參照下圖:
仿真分析技術(shù)的應(yīng)用范圍涵蓋社會(huì)的諸多方面,本文我們也對圖撲可視化引擎在數(shù)值仿真分析領(lǐng)域的應(yīng)用做了一些介紹。
仿真分析的意義和作用在于當(dāng)所研究的系統(tǒng)造價(jià)昂貴、實(shí)驗(yàn)的危險(xiǎn)性大或需要很長的時(shí)間才能了解系統(tǒng)參數(shù)變化所引起的后果時(shí),仿真是一種特別有效的研究手段。
結(jié)合圖撲軟件 Web 可視化引擎為工程仿真、氣象預(yù)報(bào)、生命科學(xué)、科研教育、電力系統(tǒng)、交通運(yùn)輸、工業(yè)制造等不同領(lǐng)域的發(fā)展起到了推動(dòng)作用,為不同的行業(yè)發(fā)展注入了新的動(dòng)力。
圖撲軟件強(qiáng)大靈活的前端可視化引擎自主研發(fā)設(shè)計(jì),未使用第三方開源庫實(shí)現(xiàn)。友好的 API 和靈活的可擴(kuò)展性,使得圖撲引擎開發(fā)的產(chǎn)品具備高性能,高可擴(kuò)展性,用戶可以靈活輕松的實(shí)現(xiàn)各種展示效果。
圖撲軟件已廣泛應(yīng)用于智慧城市、園區(qū)、樓宇、工廠、智能制造、水務(wù)、能源、光伏、風(fēng)電、電力、新基建、運(yùn)維、政務(wù)、交通、醫(yī)療、金融、科研等行業(yè)。累計(jì)為包括三一、寶信、南瑞、華為、騰訊、西門子、施耐德、霍尼韋爾等眾多國內(nèi)外企業(yè)提供專業(yè)的數(shù)字化服務(wù),為企業(yè)提供設(shè)備的實(shí)時(shí)監(jiān)測、運(yùn)營維護(hù)和安全預(yù)警、仿真分析等相關(guān)需求。
審核編輯 黃昊宇
-
3D
+關(guān)注
關(guān)注
9文章
2894瀏覽量
107640 -
仿真分析
+關(guān)注
關(guān)注
3文章
105瀏覽量
33674 -
虛擬仿真
+關(guān)注
關(guān)注
0文章
105瀏覽量
13038 -
數(shù)據(jù)可視化
+關(guān)注
關(guān)注
0文章
467瀏覽量
10318 -
數(shù)字孿生
+關(guān)注
關(guān)注
4文章
1331瀏覽量
12279
發(fā)布評論請先 登錄
相關(guān)推薦
評論