占俊達(dá),李億紅,吳森森*,曹盛文,汪愿愿,張 豐,杜震洪
(1.浙江大學(xué) 浙江省資源與環(huán)境信息系統(tǒng)重點(diǎn)實(shí)驗(yàn)室,浙江 杭州 310058; 2.浙江大學(xué) 地理與空間信息研究所,浙江 杭州 310058; 3.國家海洋局東海環(huán)境監(jiān)測中心,上海 201206; 4.國家海洋信息中心,天津 300171; 5.浙江大學(xué) 海洋研究院,浙江 舟山 316022)
隨著近年來全球化工產(chǎn)業(yè)的迅速發(fā)展,世界范圍內(nèi)對化學(xué)品的需求與日俱增,散裝危險(xiǎn)化學(xué)品(簡稱?;?的貨物運(yùn)輸逐漸成為海路運(yùn)輸?shù)闹匾M成部分之一[1]。作為世界?;飞a(chǎn)和消費(fèi)大國,我國每年海運(yùn)的各類?;房偭窟_(dá)到3億多噸,受到?;返囊兹家妆浴⒏g性、放射性、毒害性等獨(dú)有的危險(xiǎn)屬性[2]以及海運(yùn)環(huán)境復(fù)雜性的影響,海上危化品貨物運(yùn)輸存在許多安全隱患,隨之而來的各類?;沸孤┦鹿暑l發(fā),對我國沿海生態(tài)環(huán)境造成了嚴(yán)重影響。如2001年4月17日發(fā)生在長江口的事故,泄漏苯乙烯達(dá)705 t,是迄今為止世界上泄漏苯乙烯最多的一起船舶污染事故[3]。2018年,巴拿馬籍油船“桑吉”輪在長江口以東發(fā)生碰撞事故,船上十萬多噸凝析油和大量燃油發(fā)生泄漏,嚴(yán)重影響了東海海洋生態(tài)環(huán)境[4- 5]。目前我國海上重大?;沸孤┩话l(fā)事故應(yīng)急過程中存在缺乏有效的現(xiàn)場快速檢測、跟蹤監(jiān)測等技術(shù)及信息服務(wù)平臺,無法開展準(zhǔn)確的預(yù)警預(yù)測等諸多問題。如何開展快速有效的監(jiān)測[6]、預(yù)警預(yù)報(bào)[7]和處置[8]等應(yīng)急響應(yīng),已成為業(yè)務(wù)工作的迫切需求。
在預(yù)警預(yù)報(bào)中,對?;沸孤┤牒:蟮钠茢U(kuò)散過程進(jìn)行預(yù)測預(yù)警是非常重要的環(huán)節(jié)之一。預(yù)測結(jié)果提供的未來各時(shí)刻的?;窋U(kuò)散范圍、各區(qū)域的危化品濃度以及會受到影響的敏感區(qū)域等信息能使相關(guān)應(yīng)急決策人員對擴(kuò)散情況有更全面的認(rèn)識,使處置工作在空間、時(shí)間上有更強(qiáng)的針對性[9-10]。而對海上?;菲茢U(kuò)散預(yù)測結(jié)果進(jìn)行三維動態(tài)可視化,能夠幫助決策者更加快速、直觀、形象化地掌握漂移擴(kuò)散發(fā)展過程,因此有必要對從預(yù)測模型結(jié)果數(shù)據(jù)到?;菲茢U(kuò)散場景可視化的一整套流程的實(shí)現(xiàn)方法進(jìn)行相關(guān)研究。
?;窋U(kuò)散過程可通過三維離散數(shù)據(jù)進(jìn)行表征。國內(nèi)外對離散數(shù)據(jù)擴(kuò)散的三維可視化方法已進(jìn)行了較多的研究,最為主流的是粒子法。模糊物體如火焰、云、薄霧、煙霧、擴(kuò)散物體等,因其沒有固定的形狀,無法使用傳統(tǒng)的繪制方法繪制[11]。REEVES[12]提出了使用粒子系統(tǒng)來對這些模糊物體進(jìn)行建模的方法,后來HARRIS et al[13]、UMENHOFFER et al[14]、WANG et al[15]在這方面進(jìn)行了更深入的研究。李苗苗[16]使用粒子系統(tǒng)模擬分層的污染物濃度分布,建立了污染物濃度值與粒子顏色值之間的映射關(guān)系,并且通過賦予粒子隨機(jī)的大小使全局條件下的濃度值變化有了較好的可視化效果。李九松[17]提出了基于虛擬海洋可視化平臺渲染引擎與粒子系統(tǒng)的海上溢油動態(tài)可視化方法,初步實(shí)現(xiàn)了海上泄漏污染物擴(kuò)散過程的動態(tài)可視化模擬。除粒子法外,陳蘭芳[18]利用ArcGIS平臺進(jìn)行二次開發(fā),建立泄漏危化品漂移擴(kuò)散趨勢的可視化系統(tǒng),利用軌跡和等值線等形式實(shí)現(xiàn)了對?;愤\(yùn)移擴(kuò)散范圍的動態(tài)顯示。廖國祥 等[19]利用GIS平臺實(shí)現(xiàn)了溢油數(shù)值模擬結(jié)果漸進(jìn)、快進(jìn)、快倒等模式的動態(tài)播放展示。鄒長軍 等[20]利用紋理投影方法和基于高斯平滑濾波的邊緣鋸齒改善方法對海面溢油進(jìn)行可視化,具有良好的適用性。
縱觀國內(nèi)外對于污染擴(kuò)散可視化的研究,基本實(shí)現(xiàn)了擴(kuò)散物質(zhì)隨時(shí)間變化的擴(kuò)散過程的連續(xù)呈現(xiàn),能夠較為直觀地看出各時(shí)刻擴(kuò)散物質(zhì)所到達(dá)的空間位置以及擴(kuò)散的總體趨勢。但仍存在以下幾個(gè)問題:(1)一部分?jǐn)U散可視化的研究脫離了周圍環(huán)境場景,使得擴(kuò)散過程整體效果比較單調(diào)、孤立;(2)在使用粒子系統(tǒng)進(jìn)行的擴(kuò)散可視化研究中,由于粒子數(shù)目較多、渲染算法效率不高等原因,使得整體擴(kuò)散過程不夠流暢;(3)一些研究雖然在三維地形場景中進(jìn)行污染物擴(kuò)散的可視化,但擴(kuò)散體本身僅僅是一個(gè)二維的平面,僅適用于海面漂浮污染物的可視化,不能滿足溶解擴(kuò)散型、易揮發(fā)型等?;返臄U(kuò)散可視化;(4)一些研究用切換污染物濃度場專題圖的方法來實(shí)現(xiàn)擴(kuò)散的動態(tài)效果,這類方法需要人工干預(yù),可擴(kuò)展性差,修改擴(kuò)散過程的參數(shù)后,需要重新生成部分或所有專題圖才能完成整個(gè)擴(kuò)散過程的更新;(5)缺少對于場景或擴(kuò)散過程的交互操作,無法對擴(kuò)散過程進(jìn)行交互式的控制。
針對實(shí)際應(yīng)用需求以及現(xiàn)有研究存在的問題,本文提出了一種基于Unity3D引擎及其粒子系統(tǒng)的海上?;菲茢U(kuò)散過程三維動態(tài)可視化方法,在搭建海洋周邊三維場景的基礎(chǔ)上,對?;菲茢U(kuò)散模型預(yù)測結(jié)果數(shù)據(jù)進(jìn)行讀取、處理與優(yōu)化,對不同類型擴(kuò)散體的濃度、厚度、擴(kuò)散范圍、擴(kuò)散趨勢進(jìn)行直觀的可視化展示,并能對擴(kuò)散體的擴(kuò)散進(jìn)度、模擬速度、透明度等狀態(tài)進(jìn)行交互式控制,旨在為海上危化品泄漏突發(fā)事故應(yīng)急處置提供信息參考與輔助決策支持。
海上危化品漂移擴(kuò)散預(yù)測模型(簡稱擴(kuò)散模型)運(yùn)算輸出的?;肺磥頂U(kuò)散狀態(tài)數(shù)據(jù),即用于本文擴(kuò)散可視化的原始數(shù)據(jù),被組織在網(wǎng)絡(luò)通用數(shù)據(jù)格式(Network Common Data Format,NetCDF)文件中。一個(gè)NetCDF文件包括變量、維度、屬性等要素,存儲的數(shù)據(jù)是一個(gè)多自變量的單值函數(shù),用公式可表示為:
f(x,y,z,…)=value
(1)
函數(shù)的自變量x,y,z等在NetCDF文件中被稱作“維度”,以?;窛舛葦?shù)據(jù)dye為例,描述這個(gè)數(shù)據(jù)使用了4個(gè)維度:時(shí)刻、深度、經(jīng)度、緯度,用公式可表示為:
f(time,depth,lon,lat)=dye
(2)
由擴(kuò)散模型計(jì)算得到的數(shù)據(jù)除了危化品濃度外,還包括溫度、鹽度、水平流速、三維流速、水深等,數(shù)據(jù)輸出的時(shí)間間隔為1 d,即每天輸出1組預(yù)測數(shù)據(jù)。
在進(jìn)行危化品漂移擴(kuò)散的三維動態(tài)可視化時(shí),使用的數(shù)據(jù)主要包括濃度(dye)、經(jīng)度(lon_rho)、緯度(lat_rho)等。編寫腳本對NetCDF文件進(jìn)行讀取解析操作。讀取的變量被寫入對應(yīng)維度的數(shù)組中,如dye數(shù)據(jù)包括時(shí)刻、深度、經(jīng)度、緯度4個(gè)維度,讀取時(shí),它被寫入一個(gè)四維數(shù)組中,可以用指定下標(biāo)訪問對應(yīng)位置的數(shù)據(jù)。模型數(shù)據(jù)處理后輸出的內(nèi)容是存儲了各個(gè)時(shí)刻相關(guān)坐標(biāo)點(diǎn)的坐標(biāo)信息以及濃度信息的文本文件。
為了減少導(dǎo)出的數(shù)據(jù)量,在不影響視覺效果的前提下減少擴(kuò)散可視化時(shí)的粒子數(shù)目,提高渲染效率與流暢度,可剔除數(shù)據(jù)中的陸地部分以及全過程中未受危化品擴(kuò)散體影響的點(diǎn)位。通過對濃度數(shù)據(jù)四維數(shù)組的迭代,可以篩選出所有在?;窋U(kuò)散過程中受到污染物影響的點(diǎn)位,僅將這些點(diǎn)的相關(guān)擴(kuò)散信息寫入文件保存。模型數(shù)據(jù)處理與優(yōu)化流程如圖1所示。
圖1 模型數(shù)據(jù)處理與優(yōu)化流程Fig.1 Model data processing and optimization process
將擴(kuò)散可視化過程置于周邊環(huán)境場景中能夠增加其真實(shí)感,使擴(kuò)散體影響的范圍和區(qū)域能更加直觀地表現(xiàn)。本方法中的海洋周邊三維場景采用數(shù)字遙感影像結(jié)合數(shù)字高程影像的方式進(jìn)行構(gòu)建,數(shù)字遙感影像為場景提供紋理信息,數(shù)字高程影像則提供平面的高程信息。
對海洋周邊一定范圍內(nèi)的數(shù)字高程模型(Digital Elevation Model,DEM)數(shù)據(jù)進(jìn)行處理,利用其中包含的整個(gè)平面的高程信息,將二維的DEM影像轉(zhuǎn)化為三維的場景模型。首先,將范圍內(nèi)多幅DEM數(shù)據(jù)導(dǎo)入ArcMap進(jìn)行拼合,并繪制一個(gè)代表場景邊界的多邊形要素作為邊界,對拼合后的DEM數(shù)據(jù)進(jìn)行裁剪,得到目標(biāo)區(qū)域的DEM數(shù)據(jù),將其導(dǎo)出為TIFF文件。接著,將新的DEM文件導(dǎo)入Global Mapper中,選擇適當(dāng)?shù)匿秩痉绞胶突叶仍O(shè)置后導(dǎo)出為JPG圖片文件。然后,將導(dǎo)出的JPG文件導(dǎo)入Photoshop進(jìn)行長寬尺寸調(diào)整,將調(diào)整后的圖像輸出為Raw格式。最后,在Unity3D引擎場景中添加一個(gè)新的地形(Terrain)對象,為地形組件Heightmap設(shè)置導(dǎo)入處理得到的Raw文件,調(diào)整寬高比例和大小。設(shè)置完成后,可以看到場景中生成了一個(gè)沒有地形紋理的海洋周邊環(huán)境三維模型。
數(shù)字遙感影像選用Landsat 8 OLI影像,對其進(jìn)行一系列的處理,使其作為紋理貼合到對應(yīng)的模型上。首先,將其導(dǎo)入ArcMap,利用裁剪DEM數(shù)據(jù)時(shí)所用的多邊形要素,對遙感影像進(jìn)行同樣的裁剪操作,得到相同目標(biāo)區(qū)域的遙感影像。將其導(dǎo)出為分辨率較高的JPG格式文件。接著,將圖片文件導(dǎo)入Photoshop中,對圖像中海洋、山體等的顏色適當(dāng)調(diào)整后導(dǎo)出。最后,將該紋理文件導(dǎo)入到Unity3D中,在地形組件的紋理(Textures)設(shè)置中新建紋理,并設(shè)置為導(dǎo)入的紋理文件,調(diào)整大小尺寸,使其與地形一致。設(shè)置完成后,紋理被正確地覆蓋到地形模型上,即可完成海洋周邊三維場景構(gòu)建(圖2)。
圖2 海洋周邊三維場景構(gòu)建Fig.2 3D scene construction around the ocean
?;返钠茢U(kuò)散動態(tài)可視化主要借助Unity3D引擎的粒子系統(tǒng)來實(shí)現(xiàn)。粒子系統(tǒng)由粒子集合組成,集合中每個(gè)粒子都有各自的位置、速度(速率和方向)、大小、顏色、透明度、壽命等屬性[21],這些屬性隨著時(shí)間不斷變化,將擴(kuò)散物體在水中的擴(kuò)散過程抽象為大規(guī)模粒子在不同作用力下的運(yùn)動過程,反映泄漏?;冯S時(shí)間變化的擴(kuò)散狀態(tài)。
在場景中添加一個(gè)粒子系統(tǒng)對象,在該對象上創(chuàng)建一個(gè)新的腳本用于擴(kuò)散過程的代碼實(shí)現(xiàn)。擴(kuò)散可視化的實(shí)現(xiàn)可分為?;窋U(kuò)散數(shù)據(jù)讀取、粒子生成、擴(kuò)散粒子幀更新三部分。
先讀取擴(kuò)散模型結(jié)果文件中的擴(kuò)散數(shù)據(jù)。對文件的每一行分別進(jìn)行處理,將各點(diǎn)粒子的坐標(biāo)信息存儲在坐標(biāo)動態(tài)數(shù)組中,將各時(shí)刻各點(diǎn)粒子的濃度信息存儲在濃度動態(tài)數(shù)組中備用。
在Unity3D腳本的Start函數(shù)中進(jìn)行粒子系統(tǒng)的初始化。設(shè)置粒子系統(tǒng)的粒子移動速度、粒子存在時(shí)間、粒子最大數(shù)量等參數(shù)。賦值完成后對粒子進(jìn)行發(fā)射。每一個(gè)發(fā)射的粒子,從坐標(biāo)動態(tài)數(shù)組中獲取其坐標(biāo)信息,對其位置屬性進(jìn)行賦值;將濃度信息以特定的配色映射為顏色對象,并且對濃度低的粒子設(shè)置較低的透明度,從而和地形更好地融合。給所有粒子定義一個(gè)合適的初始大小,使整個(gè)粒子集合在視覺上形成整體。最后將上述設(shè)定提交給粒子系統(tǒng),完成其初始化。
Unity3D腳本的Update函數(shù)將逐幀執(zhí)行,在該函數(shù)中定義粒子系統(tǒng)隨時(shí)間變化的形式,粒子的幀更新過程由以下幾個(gè)全局變量控制:
(1)更新率
控制更新每一幀的時(shí)間間隔,值越小,幀更新的頻率越高(值為1時(shí)表示1 s更新1幀)。
(2)單位時(shí)間幀數(shù)
表示兩個(gè)時(shí)刻間模擬的幀數(shù),值越大,對擴(kuò)散過程的描繪越精細(xì)。比如值為24時(shí),表示將原來以天為單位的數(shù)據(jù)通過插值精細(xì)到每小時(shí)進(jìn)行1次模擬。
(3)總幀數(shù)
即從第一個(gè)時(shí)刻到最后一個(gè)時(shí)刻擴(kuò)散過程的總幀數(shù),其值等于(總時(shí)刻數(shù)-1)×單位時(shí)間幀數(shù)。
(4)當(dāng)前時(shí)刻
記錄當(dāng)前到達(dá)的時(shí)刻。
(5)當(dāng)前時(shí)刻間幀數(shù)
記錄當(dāng)前兩時(shí)刻間到達(dá)的幀數(shù)。
(6)當(dāng)前總進(jìn)度
記錄當(dāng)前可視化進(jìn)度到達(dá)的總幀數(shù),其值等于(當(dāng)前時(shí)刻×單位時(shí)間幀數(shù))+當(dāng)前時(shí)刻間幀數(shù)。
由當(dāng)前總進(jìn)度控制擴(kuò)散可視化的總進(jìn)度。當(dāng)單位時(shí)間幀數(shù)大于1時(shí),從濃度動態(tài)數(shù)組中提取出前一時(shí)刻和后一時(shí)刻濃度的數(shù)組,再根據(jù)當(dāng)前時(shí)刻間幀數(shù)的值進(jìn)行中間濃度的插值計(jì)算,得到當(dāng)前幀擴(kuò)散體各點(diǎn)的濃度數(shù)值(圖3)。根據(jù)濃度對粒子的顏色屬性進(jìn)行與初始化同樣的賦值處理。以此方法對粒子集合進(jìn)行逐幀更新,實(shí)現(xiàn)擴(kuò)散效果的動態(tài)可視化。
圖3 粒子濃度變化動態(tài)插值Fig.3 Dynamic interpolation of particle concentration
由于擴(kuò)散體在各個(gè)時(shí)刻的整體形態(tài)與濃度分布情況由粒子系統(tǒng)(眾多粒子組成的集合)進(jìn)行表現(xiàn),可以通過改變各粒子的空間位置屬性和顏色屬性表現(xiàn)三維空間中任意形態(tài)的?;窋U(kuò)散體。因此該方法適用于海面漂浮型、懸浮輸移型、溶解擴(kuò)散型、易揮發(fā)型等入水形態(tài)各異的?;返臄U(kuò)散可視化。
交互控制模塊為用戶提供控制擴(kuò)散過程的交互式面板,設(shè)計(jì)如圖4所示。
圖4 可視化過程交互控制面板Fig.4 Interactive control panel of visualization process
交互控制模塊可對擴(kuò)散過程進(jìn)行以下幾項(xiàng)控制:
(1)暫停與繼續(xù)
通過點(diǎn)擊按鈕,可以對擴(kuò)散過程進(jìn)行暫停和繼續(xù)的控制。
(2)不透明度控制
通過拖動不透明度拖條,可以對擴(kuò)散體的不透明度進(jìn)行實(shí)時(shí)修改,不透明度為0時(shí),擴(kuò)散體將在視覺上消失。
(3)模擬速率
通過拖動模擬速率拖條,可以對擴(kuò)散過程的模擬速率進(jìn)行實(shí)時(shí)修改,在腳本代碼中體現(xiàn)為修改更新率的值。
(4)擴(kuò)散進(jìn)度
通過點(diǎn)擊進(jìn)度條特定位置或直接拖動進(jìn)度條,可以將擴(kuò)散進(jìn)度直接跳轉(zhuǎn)到對應(yīng)的時(shí)刻,在腳本代碼中體現(xiàn)為修改當(dāng)前總進(jìn)度的值,從而能查看任意時(shí)刻的危化品擴(kuò)散情況。
(5)場景漫游
滾動鼠標(biāo)滾輪可以控制相機(jī)的前進(jìn)和后退;按住鼠標(biāo)右鍵進(jìn)行拖動可以控制相機(jī)角度的旋轉(zhuǎn);按住鼠標(biāo)左鍵進(jìn)行拖動可以進(jìn)行相機(jī)位置的平移。通過以上3種視角的控制方式,可以實(shí)現(xiàn)對場景任意位置和任意角度的查看。通過點(diǎn)擊面板左下方的“回到初始視角”按鈕,相機(jī)的位置和角度重置為初始狀態(tài)。
以杭州灣海域模擬的某?;沸孤┦鹿蕿槔M(jìn)行海上?;菲茢U(kuò)散過程三維動態(tài)可視化的實(shí)驗(yàn),驗(yàn)證本文方法的性能與效果。
首先對該區(qū)域數(shù)字高程影像DEM和Landsat 8遙感影像進(jìn)行相應(yīng)的處理,分別生成同一目標(biāo)區(qū)域的Raw文件和紋理文件,利用Unity3D的Terrain組件生成該區(qū)域的三維場景。
模擬仿真數(shù)據(jù)來源于自然資源部第一海洋研究所的模式數(shù)據(jù),采用Regional Ocean Modeling System(ROMS)區(qū)域海洋模式構(gòu)建了杭州灣示范區(qū)三維浪-潮-流水動力數(shù)值模式,水平分辨率為900 m,模擬區(qū)域范圍為120.5°E—123.5°E,29.5°N—32.0°N,模式的上層強(qiáng)迫考慮了氣候態(tài)平均的熱通量、淡水通量、動量通量、海表面溫度和海表面鹽度,潮強(qiáng)迫采用了10個(gè)分潮,開邊界源自中國近海大區(qū)域的模擬結(jié)果[22]。模擬事故發(fā)生位置為(121.61°E,30.40°N)。將溶解擴(kuò)散型?;芬暈槎栊允聚櫸铮尫庞谀J奖韺?,初始濃度為實(shí)際泄漏量的100%,釋放時(shí)間為1月1日。
模型模擬所得的結(jié)果數(shù)據(jù)為NetCDF文件,對數(shù)據(jù)進(jìn)行讀取與優(yōu)化處理,剔除與可視化無關(guān)的數(shù)據(jù),將相關(guān)數(shù)據(jù)(經(jīng)緯度、濃度)輸出為文本文件。
利用Unity3D腳本依次讀取各時(shí)刻的?;窋U(kuò)散數(shù)據(jù),并初始化粒子系統(tǒng),釋放擴(kuò)散粒子。通過插值處理,原始數(shù)據(jù)的時(shí)間分辨率得到提升,可視化過程中對每一幀中的各粒子位置與濃度數(shù)值進(jìn)行更新,從而動態(tài)地展現(xiàn)?;菲茢U(kuò)散的連續(xù)變化過程。交互控制模塊提供基本的場景漫游交互功能以及針對擴(kuò)散過程與擴(kuò)散體狀態(tài)的控制功能。
海上?;菲茢U(kuò)散過程三維動態(tài)可視化效果如圖5所示。在性能與效果方面,模型預(yù)測結(jié)果數(shù)據(jù)的處理與優(yōu)化在2 s內(nèi)完成,三維場景與處理后數(shù)據(jù)在5 s內(nèi)完成加載與讀取。由于可視化過程從通過篩選模型數(shù)據(jù)減少粒子數(shù)量和在可視化腳本中使用高效的粒子系統(tǒng)渲染方法兩個(gè)方面進(jìn)行優(yōu)化,漂移擴(kuò)散可視化的幀率能達(dá)到40幀/s,通過插值處理,對比原始數(shù)據(jù),時(shí)間粒度可提升10倍以上,視覺效果流暢,并能通過擴(kuò)散體顏色直觀地展現(xiàn)污染物的濃度分布,可對污染體的透明度、擴(kuò)散速度、擴(kuò)散進(jìn)度等擴(kuò)散狀態(tài)進(jìn)行交互式控制。此外,海面漂浮型和易揮發(fā)型危化品的漂移擴(kuò)散可視化效果如圖6所示。實(shí)驗(yàn)結(jié)果總體上達(dá)到了預(yù)期的效果,具有一定的實(shí)際應(yīng)用價(jià)值。
圖5 海上?;窋U(kuò)散過程可視化實(shí)驗(yàn)結(jié)果(溶解擴(kuò)散型)Fig.5 Visualization result of the diffusion process of maritime hazardous chemicals (dissolution type)
圖6 海面漂浮型(a)和易揮發(fā)型(b)危化品漂移擴(kuò)散可視化效果Fig.6 Visualization results of floating type (a) and volatilization type (b) of maritime hazardous chemicals
由于本文方法從漂移擴(kuò)散預(yù)測模型結(jié)果文件讀取與數(shù)據(jù)篩選優(yōu)化、粒子系統(tǒng)初始化與逐幀更新渲染到用戶交互操作模塊的全流程均使用代碼腳本來實(shí)現(xiàn),因此,只需要輸入指定格式的原始模型預(yù)測結(jié)果文件,擴(kuò)散可視化程序便會按流程運(yùn)行,無需人工干預(yù),隨時(shí)實(shí)現(xiàn)對?;窋U(kuò)散預(yù)測結(jié)果數(shù)據(jù)的可視化;修改腳本中特定的參數(shù)可以對可視化過程的幀率、擴(kuò)散體的濃度配色等進(jìn)行方便的調(diào)整,具有較強(qiáng)的可擴(kuò)展性。
本文針對目前海上危化品泄漏事故中預(yù)警預(yù)報(bào)環(huán)節(jié)的實(shí)際應(yīng)用需求以及現(xiàn)有污染擴(kuò)散可視化研究中在場景構(gòu)建、渲染效率、可擴(kuò)展性、交互控制等方面存在的不足,提出了一種基于Unity3D引擎及其粒子系統(tǒng)的海上?;菲茢U(kuò)散過程三維動態(tài)可視化方法,給出了從模型數(shù)據(jù)處理與優(yōu)化、海洋周邊環(huán)境三維場景構(gòu)建到粒子系統(tǒng)初始化與更新、交互控制等模塊的實(shí)現(xiàn)過程。以杭州灣海域的一次模擬事故為例進(jìn)行實(shí)驗(yàn),在搭建杭州灣周邊三維場景的基礎(chǔ)上,對泄漏?;窋U(kuò)散體的濃度、厚度、擴(kuò)散范圍、擴(kuò)散趨勢進(jìn)行流暢的動態(tài)可視化展示,并能對擴(kuò)散體的擴(kuò)散進(jìn)度、模擬速度、透明度等狀態(tài)進(jìn)行交互式控制。鑒于粒子系統(tǒng)的特性,該可視化方法可支持海面漂浮型、溶解擴(kuò)散型、易揮發(fā)型等多種類型?;返臄U(kuò)散可視化,實(shí)驗(yàn)結(jié)果達(dá)到了預(yù)期的效果,能夠?yàn)楹I衔;沸孤┩话l(fā)事故應(yīng)急處置提供信息參考與輔助決策支持。
致謝感謝國家重點(diǎn)研發(fā)計(jì)劃項(xiàng)目課題組(2016YFC1402404)為本文提供海上?;菲茢U(kuò)散預(yù)測模擬結(jié)果數(shù)據(jù)。