圖撲 Web 視覺化引擎在模擬分析領域的應用

hightopo發表於2022-07-15

在數字孿生和模擬研究過程中,會產生大量和三維空間相關的數值資訊,比如裝置外觀的掃描資料、地形掃描資料、生產裝置溫度場/壓力場、流體的速度場、流體擴散,以及各種模擬資料:速度,壓力,應力,溫度等。

這些資料的特點是數量大,使用二維圖表呈現不直觀,無法直觀呈現資料的三維分佈和資料隨時間的變化。

圖撲 Web 視覺化引擎在模擬分析領域的應用

圖撲 Web 視覺化引擎在模擬分析領域的應用

圖撲軟體是基於 WebGL 的三維視覺化引擎,在 WebGL 基礎上封裝了基本的三維模型建立、呈現的 API。同時還封裝了豐富的數學運算庫,涵蓋多維變換,幾何計算等。

圖撲 SDK 開放靈活的架構也使得使用者開發擴充套件功能非常方便,比如熱力圖(體)外掛,流場粒子展示外掛,體繪製外掛等。強大靈活的 3D 引擎可以讓使用者輕鬆實現三維模型的呈現編輯功能。使用者無需關心繁瑣複雜的 WebGL 操作,可以將精力放到應用的業務層,節省開發費用,加快開發程式,通過三維動態直觀展示方式,挖掘隱藏的資訊內容,提升應用價值。

本文針對以下 6 種呈現方式討論使用圖撲 SDK 實現的方法:

  • 模型表面貼圖
  • 模型三維網格
  • 粒子流貼圖
  • 粒子流體
  • 體繪製
  • 點雲

以下介紹的方法中,為了提高前端的效能和使用者體驗,涉及到大量資料處理的操作都可以放到伺服器上實現。前端只負責少量運算和效果展示。

下圖是實現整個系統的架構:

圖撲 Web 視覺化引擎在模擬分析領域的應用

模型表面貼圖

對於需要展示表面資料的應用,比如裝置表面的溫度,壓力等,輸入資料是模型表面的點座標和資料值的集合,比如 x, y, z, value。實現的方法:根據模型上每一個點 value 值計算出此點貼圖的 UV 值。實現原理圖如下:

圖撲 Web 視覺化引擎在模擬分析領域的應用

有以下兩種情況需要用插值演算法重新生成資料:

  • 模型表面貼圖
  • 模型三維網格

下圖是實現的原理。主要增加了使用反距離加權法重新生成資料。由於這一步計算量大,需要放到伺服器上,作為資料預處理功能實現。

圖撲 Web 視覺化引擎在模擬分析領域的應用

圖撲 Web 視覺化引擎在模擬分析領域的應用

模型三維網格

三維網格展示在一個二維面上的屬性在上一節 “模型表面貼圖” 已介紹過。這裡主要介紹三維網格展示三維資訊,比如三維速度場,三維溫度場等。

由於是一個三維的體,無法用貼圖的方式給出網格的顏色資訊。此時需要用插值演算法計算出規則空間網格的場資訊。比如在 x,y, z 整數值的點插值取樣。將取樣獲得的空間場資訊以材質的方式傳給圖撲 SDK。SDK 在渲染每一個點的時候,根據點周圍的空間 4 個點做插值擬合獲得屬性值,並根據屬性值範圍計算出渲染的顏色。具體流程參照下圖:

圖撲 Web 視覺化引擎在模擬分析領域的應用

圖撲 Web 視覺化引擎在模擬分析領域的應用

圖撲 Web 視覺化引擎在模擬分析領域的應用

上方為基於鑽孔資料的三維地質模型視覺化(點選文字跳轉檢視智慧煤礦往期回顧),智慧礦山是一個匯聚了多學科、多主題、多維空間資訊的複雜系統,是在礦山地表和地下開採礦產資源的工程活動中所涉及的各種靜、動態資訊的全部數字化管理,智慧分析,視覺化展示,從而達到降本增效,實現企業利益的最大化。

粒子流貼圖

對於需要在一個面上展示的流體場,比如風場,水流場,壓力場等,需要以動態的方式呈現,可以使用圖撲粒子外掛實現。

系統基本原理如下圖:二維流體場資訊作為貼圖資源傳給圖撲 SDK。SDK 裡使用貼圖儲存粒子的位置資訊,利用流體場和粒子位置,計算出下一幀的粒子位置。然後融合上一幀的輸出和當前輸出,實現粒子的移動尾跡效果。

圖撲 Web 視覺化引擎在模擬分析領域的應用

圖撲三維粒子外掛可以實現和二維粒子流相似的引數調節:

粒子的大小

圖撲 Web 視覺化引擎在模擬分析領域的應用

粒子的形狀

圖撲 Web 視覺化引擎在模擬分析領域的應用

粒子的流速

圖撲 Web 視覺化引擎在模擬分析領域的應用

粒子數量

圖撲 Web 視覺化引擎在模擬分析領域的應用

現實的閾值

圖撲 Web 視覺化引擎在模擬分析領域的應用

模擬精度等

圖撲 Web 視覺化引擎在模擬分析領域的應用

粒子流體

對於需要展示三維空間的向量場,比如風場,速度場等,需要以動態的方式呈現。可以使用圖撲粒子外掛實現。外掛的主要輸入資料是三維向量場。它是在伺服器端通過對向量場按照固定間隔取樣擬合獲得。

圖撲三維粒子外掛可以實現和二維粒子流相似的引數調節:

粒子的大小

粒子的形狀

粒子的流速

粒子數量

現實的閾值等

圖撲 Web 視覺化引擎在模擬分析領域的應用

體繪製

體繪製是一種將三維空間中的體資料,渲染到二維圖形上的技術。體繪製可以在二維平面上展示出三維空間中的資料,可直觀窺探物體內部細節,因此可應用於各種電、熱、磁場的模擬,水汙染擴散模擬、海洋遙感三維視覺化、醫學影像(CT) 展示等。

電力行業中,變壓器是一種重要的裝置,變壓器繞組的溫度分佈,特別是熱點溫度,是制約變壓器執行安全和使用壽命的重要因素。本案例中通過體繪製的方式展示變壓器繞組溫度場。首先通過有限元模擬,對變壓器內部的熱傳導過程模擬,最終得到變壓器內部的溫度分佈規律。將有限元模擬出的溫度資料,通過插值的方法獲得整個繞組的溫度切片。這裡有多種插值演算法,如反距離加權法、克里金法、自然鄰域法、樣條函式法等。這裡採用反距離加權演算法。

圖撲 Web 視覺化引擎在模擬分析領域的應用

體繪製的演算法有多種:光線投射演算法、拋雪球演算法、錯切變形演算法。三種演算法相比較,光線投射演算法計算量相對較大,但是繪製的影像質量較高,有利於保留影像細節,這裡我們選用光線投射演算法。為了保證渲染速度,我們要對光線投射演算法進行了優化,減少不必要計算量。通過優化,可以做到在有非整合顯示卡的普通 PC 機上,輕鬆實時渲染數百萬以上點的有限元分析結果。

此外,可以對渲染結果進行裁切,展示繞組任何切面的溫度分佈情況。

以下案例是體繪製在 CT 視覺化領域的應用:

圖撲 Web 視覺化引擎在模擬分析領域的應用

圖撲 Web 視覺化引擎在模擬分析領域的應用

點雲

圖撲引擎內建對點雲的支援。支援的點數量可達千萬。點雲裡每個點的貼圖/形狀可配置。

點雲可以用於展示模型本身或者模型表面的屬性資訊,比如壓力和溫度等。

對於鐳射點雲資料,通常一個點的資訊包含三維座標和顏色值,比如 x,y,z,r,g,b 六個欄位。將三維座標和顏色資訊傳給圖撲點雲可以直接展示模型。對於大場景或高精度的點雲模型,由於點資料量巨大,無法全部顯示。可以採用空間劃分和 LOD 技術,生成不同解析度的點雲模型,按需載入。需要展示區域性高精度模型時,只載入區域性高精度模型資訊。

圖撲 Web 視覺化引擎在模擬分析領域的應用

對於需要展示變化過程需求,圖撲引擎支援定製外掛(shader),通過將多個時間點的顏色資訊傳給 shader,shader 根據時間進度資訊插值計算出某一時間t的顏色,進行渲染。JavaScript 主程式迴圈更新執行時間t。這樣的優點是主要的計算量放到顯示卡,模擬進度(時間)可以靈活調節,整個展示過程流暢不卡頓。流程參照下圖:

圖撲 Web 視覺化引擎在模擬分析領域的應用

模擬分析技術的應用範圍涵蓋社會的諸多方面,本文我們也對圖撲視覺化引擎在數值模擬分析領域的應用做了一些介紹。

模擬分析的意義和作用在於當所研究的系統造價昂貴、實驗的危險性大或需要很長的時間才能瞭解系統引數變化所引起的後果時,模擬是一種特別有效的研究手段。

結合圖撲軟體 Web 視覺化引擎為工程模擬、氣象預報、生命科學、科研教育、電力系統、交通運輸、工業製造等不同領域的發展起到了推動作用,為不同的行業發展注入了新的動力。

圖撲軟體強大靈活的前端視覺化引擎自主研發設計,未使用第三方開源庫實現。友好的 API 和靈活的可擴充套件性,使得圖撲引擎開發的產品具備高效能,高可擴充套件性,使用者可以靈活輕鬆的實現各種展示效果。

圖撲 Web 視覺化引擎在模擬分析領域的應用

圖撲軟體已廣泛應用於智慧城市、園區、樓宇、工廠、智慧製造、水務、能源、光伏、風電、電力、新基建、運維、政務、交通、醫療、金融、科研等行業。累計為包括三一、寶信、南瑞、華為、騰訊、西門子、施耐德、霍尼韋爾等眾多國內外企業提供專業的數字化服務,為企業提供裝置的實時監測、運營維護和安全預警、模擬分析等相關需求。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69997639/viewspace-2905694/,如需轉載,請註明出處,否則將追究法律責任。

相關文章