冶運(yùn)濤 ,梁犁麗 ,龔家國 ,曹 引 ,蔣云鐘 ,趙紅莉
(1. 中國水利水電科學(xué)研究院水資源研究所,北京 100038;2. 北京中水科水電科技開發(fā)有限公司,北京 100038)
日益嚴(yán)峻的水問題給社會(huì)經(jīng)濟(jì)發(fā)展、生態(tài)環(huán)境保護(hù)造成了“高壓”態(tài)勢(shì)。為破解水困局和解決水問題,我國提出了構(gòu)建河湖水系連通、打造“活水中國”的重大治水戰(zhàn)略[1]。河湖水系連通的聚焦點(diǎn)通過江河湖庫自然水系和城市、灌區(qū)、濕地等需水人工水系的建設(shè),建立供水協(xié)調(diào)、防洪抗旱、生態(tài)環(huán)境保護(hù)等功能統(tǒng)籌的水網(wǎng)工程體系。目前建成和在建的代表性水網(wǎng)工程有南水北調(diào)、引漢濟(jì)渭、北京“三環(huán)碧水繞京城”水網(wǎng)、山西大水網(wǎng)、“大東湖”生態(tài)水網(wǎng)等工程,輸(調(diào))水工程是水網(wǎng)系統(tǒng)的骨干工程。在我國 2020 年前建設(shè)的 172 項(xiàng)重大水利工程中,有多個(gè)“引調(diào)水工程”,如滇中引水、河北引黃入冀補(bǔ)淀等工程,這些工程是區(qū)域水網(wǎng)格局的重要組成。
水網(wǎng)輸(調(diào))水工程規(guī)劃建設(shè)涉及多部門、多行業(yè)、多地區(qū)之間的利益協(xié)調(diào),需要反復(fù)論證;作為水網(wǎng)工程重要組成的海綿城市的建設(shè),更是增加了水網(wǎng)輸(調(diào))水工程的復(fù)雜性和不可控性;在其運(yùn)行過程中,還需要對(duì)水網(wǎng)輸(調(diào))水工程進(jìn)行實(shí)時(shí)調(diào)控以協(xié)調(diào)水資源供需雙向匹配。為增強(qiáng)對(duì)水網(wǎng)輸(調(diào))水工程規(guī)劃建設(shè)和運(yùn)行維護(hù)的全生命周期管控,國際上從理論層面提出了“智能水網(wǎng)”[2]概念,論述了工程建設(shè)和運(yùn)行管理的系統(tǒng)性和協(xié)同性。智能水網(wǎng)由物理、信息、決策(或調(diào)度)等水網(wǎng)組成。數(shù)字水網(wǎng)是信息水網(wǎng)的關(guān)鍵環(huán)節(jié),其基本思想是將“物理水網(wǎng)”搬進(jìn)固定或移動(dòng)式的用戶終端,實(shí)現(xiàn)物理水網(wǎng)在信息空間的真實(shí)“映射”,為管理決策提供可視化立體式和沉浸交互式綜合集成平臺(tái)。虛擬仿真技術(shù)是數(shù)字水網(wǎng)建設(shè)的核心技術(shù)[3]之一,它可以將水網(wǎng)數(shù)值模擬和虛擬現(xiàn)實(shí)緊密結(jié)合,實(shí)現(xiàn)水網(wǎng)輸(調(diào))水工程方案和運(yùn)行管理的實(shí)時(shí)模擬和交互仿真。
將虛擬仿真技術(shù)應(yīng)用于水網(wǎng)輸(調(diào))水工程建設(shè)管理的實(shí)用價(jià)值如下[4]:1)它利用獲取的多源數(shù)據(jù),建立水網(wǎng)輸(調(diào))水工程的三維可視化、實(shí)時(shí)動(dòng)態(tài)且具有沉浸感的虛擬現(xiàn)實(shí)環(huán)境,將傳統(tǒng)的信息二維平面表達(dá)上升到三維立體空間,大幅度地提高決策前瞻性與科學(xué)性。2)它不僅能在逼真的虛擬環(huán)境中實(shí)時(shí)交互地查詢時(shí)空信息,多角度不同距離地觀看水網(wǎng)輸(調(diào))水工程的整體輪廓或局部細(xì)節(jié),還能動(dòng)態(tài)仿真時(shí)態(tài)變化下不同施工階段的工程幾何性態(tài)及其紋理特征,描述其地理環(huán)境的變化特性,從而拓展工程信息多方位的表現(xiàn)形式,豐富了管理手段。3)它可以方便地對(duì)水網(wǎng)輸(調(diào))水工程方案進(jìn)行仿真模擬,供決策者在極短時(shí)間內(nèi)獲得最有價(jià)值的信息,從而對(duì)可能發(fā)生事件提前做出判斷和制定有效的應(yīng)對(duì)方案。4)實(shí)現(xiàn)真實(shí)環(huán)境與虛擬環(huán)境中的水網(wǎng)輸(調(diào))水工程實(shí)時(shí)調(diào)控狀態(tài)動(dòng)態(tài)相互反饋。國內(nèi)外對(duì)此有一些探索,鐘登華等人研發(fā)了調(diào)水工程三維可視化仿真系統(tǒng)并在南水北調(diào)中線工程進(jìn)行了應(yīng)用[5];胡孟等建立了南水北調(diào)中線北京段輸水系統(tǒng)三維虛擬場(chǎng)景[6];張尚弘等開發(fā)了南水北調(diào)工程三維仿真系統(tǒng),將整個(gè)中線工程及周邊地形地貌在計(jì)算機(jī)上虛擬再現(xiàn)[7];于翔等以陜西省引漢濟(jì)渭工程為例,建立了可視化環(huán)境,開發(fā)水庫三維模型,并在數(shù)字地球平臺(tái)上實(shí)現(xiàn)了水庫模型的加載與展示[8];Lai 等建立了大尺度防洪減災(zāi)工程三維可視化環(huán)境,并將可視化技術(shù)和數(shù)值計(jì)算結(jié)果相結(jié)合[9]。
由于大范圍、長距離水網(wǎng)輸(調(diào))水工程環(huán)境復(fù)雜和信息量龐大,輸(調(diào))水系統(tǒng)實(shí)時(shí)調(diào)控實(shí)現(xiàn)平臺(tái)開發(fā)要解決海量地形地物的實(shí)時(shí)生成與渲染、仿真模擬與實(shí)時(shí)調(diào)控的動(dòng)態(tài)交互、多源信息的查詢管理、數(shù)值模擬的實(shí)時(shí)可視化表達(dá)、閘門調(diào)控的可視化動(dòng)態(tài)反饋等難點(diǎn)。為了探索虛擬仿真技術(shù)在水網(wǎng)輸(調(diào))水工程管理中的應(yīng)用效果,以南水北調(diào)中線工程為例進(jìn)行輸(調(diào))水系統(tǒng)實(shí)時(shí)調(diào)控實(shí)現(xiàn)平臺(tái)的搭建,同時(shí)也為類似工程提供借鑒。
輸(調(diào))水系統(tǒng)實(shí)時(shí)調(diào)控實(shí)現(xiàn)平臺(tái)是通過建立交互式三維控制平臺(tái),為仿真應(yīng)用和三維場(chǎng)景與數(shù)據(jù)之間提供通訊服務(wù)。具體功能需求如下:
1)場(chǎng)景的漫游。通過鼠標(biāo)和鍵盤的操作,實(shí)現(xiàn)從各種角度瀏覽三維地形地物,增強(qiáng)用戶在虛擬環(huán)境中的沉浸感和交互性。將二維全局性瀏覽和三維精細(xì)化觀察相結(jié)合,建立三維場(chǎng)景的鷹眼圖,實(shí)現(xiàn)鷹眼圖與三維場(chǎng)景視點(diǎn)的同步移動(dòng)。
2)信息的查詢。平臺(tái)能夠?qū)崿F(xiàn)在三維場(chǎng)景中水利工程地物模型的視頻、圖片、文字等相關(guān)信息查詢與即時(shí)顯示。同時(shí)通過在界面上輸入檢索信息,能夠?qū)崿F(xiàn)水利工程模型的快速定位。
3)方案的顯示。水資源自適應(yīng)調(diào)控模型計(jì)算及信息監(jiān)測(cè)會(huì)得到水網(wǎng)中節(jié)制閘和分水閘的水位、流量及水資源量等信息,可以將這些信息顯示在水利工程建筑物模型附近,并根據(jù)在線接入信息實(shí)現(xiàn)動(dòng)態(tài)變化。
4)模擬的可視。平臺(tái)通過連接一、二維水動(dòng)力模型對(duì)水網(wǎng)中水流狀態(tài)進(jìn)計(jì)算,利用科學(xué)計(jì)算可視化技術(shù)對(duì)模型計(jì)算結(jié)果處理、映射、可視化及顯示,并將其與水網(wǎng)周圍環(huán)境相融合。
5)閘門的控制。平臺(tái)將虛擬環(huán)境中的閘門實(shí)體模型與真實(shí)水閘構(gòu)成精準(zhǔn)的匹配關(guān)系。通過對(duì)實(shí)體模型操控,可以遠(yuǎn)程自動(dòng)化控制現(xiàn)場(chǎng)閘門的開啟度?,F(xiàn)場(chǎng)的人工閘門操作信息可以通過網(wǎng)絡(luò)傳輸給平臺(tái),實(shí)體模型在虛擬環(huán)境中同步變化。
平臺(tái)在滿足系統(tǒng)功能的同時(shí)還要滿足如下性能需求:
1)場(chǎng)景控制的流暢性。平臺(tái)應(yīng)用必須在建立靈活、流暢的場(chǎng)景控制基礎(chǔ)之上,所以在場(chǎng)景控制方面必須進(jìn)行矩陣變化及其相關(guān)算法的優(yōu)化。
2)工程檢索的快捷性。平臺(tái)對(duì)用戶的檢索要求必須快速響應(yīng)。
3)數(shù)據(jù)查詢的準(zhǔn)確性。對(duì)于用戶查詢目標(biāo),工程檢索和屬性、空間等數(shù)據(jù),數(shù)據(jù)準(zhǔn)確性都非常重要。
4)過程模擬的主動(dòng)性。在水流邊界條件變化情況下,仿真平臺(tái)能夠主動(dòng)啟動(dòng)渠道水動(dòng)力水質(zhì)模型,對(duì)沿程的水動(dòng)力水質(zhì)過程進(jìn)行動(dòng)態(tài)模擬,并在虛擬環(huán)境中實(shí)時(shí)可視化。
5)調(diào)度控制的聯(lián)動(dòng)性。通過在平臺(tái)創(chuàng)建的信息空間中操控閘門的開啟速度和開啟度,現(xiàn)實(shí)空間中閘門的開啟速度和開啟度與信息空間保持一致;若現(xiàn)實(shí)空間中閘門開度發(fā)生變化,則實(shí)時(shí)反饋到信息空間中。該功能實(shí)現(xiàn)了現(xiàn)實(shí)和信息的空間信息雙向傳遞與實(shí)時(shí)聯(lián)動(dòng)。
根據(jù)平臺(tái)的功能和性能需求,對(duì)其結(jié)構(gòu)進(jìn)行分解可以得到如圖1 所示的總體結(jié)構(gòu)。
圖1 平臺(tái)總體結(jié)構(gòu)
本研究中所用的地形建模軟件為 Terra Vista 3.0,地物建模軟件為 Multigen Creator 2.5,三維模型采用 Open Flight 格式的文件存儲(chǔ),三維場(chǎng)景驅(qū)動(dòng)采用開源視景軟件包 Open Scene Graph(OSG)2.8 和OpenGL 共同完成,整個(gè)系統(tǒng)開發(fā)采用 Visual Studio 2010。Terra Vista/Creator/OSG 三者分別發(fā)揮不同的作用,大范圍地形生成采用 Terra Vista,具體地物如節(jié)制閘、橋梁和涵洞的建模采用 Creator,場(chǎng)景驅(qū)動(dòng)及功能開發(fā)采用 OSG。
1)Terra Vista。Terra Vista 是地形三維建模中應(yīng)用最廣泛的軟件工具之一,是基于 Windows 平臺(tái)的實(shí)時(shí)三維地形數(shù)據(jù)庫生成軟件,適合大數(shù)據(jù)量的地形生成,歐洲西部和整個(gè)美國的地形三維建模曾用該軟件完成。在輸入各種相關(guān)的數(shù)據(jù)源并設(shè)置好數(shù)據(jù)庫參數(shù)后,Terra Vista 能自動(dòng)將所需的各種數(shù)據(jù)元素合并并生成內(nèi)容豐富的三維地形數(shù)據(jù)庫,輸出的地形數(shù)據(jù)能直接為用戶使用,大大降低了手工勞動(dòng)強(qiáng)度,提高了建模速度。
2)Creator。三維建模軟件 Creator 是一種實(shí)時(shí)三維仿真建模工具軟件系統(tǒng),可以在 SGI 圖形工作站也可以在 PC 機(jī)上使用。它性能優(yōu)越、系統(tǒng)可靠、穩(wěn)定性好,具有其它建模軟件無法比擬的優(yōu)點(diǎn),在仿真可視化領(lǐng)域具有廣泛的應(yīng)用。其強(qiáng)大的建模功能可為眾多的不同圖像發(fā)生器提供建模系統(tǒng)及工具,它的靈活 Open Flight 格式成為三維領(lǐng)域中流行的圖像生成格式之一,并成為仿真領(lǐng)域的行業(yè)標(biāo)準(zhǔn)。采用MultiGen Creator 工具完成三維建模與傳統(tǒng)的 CAD,3Dmax 建模方法有很大的不同,它采用更少的多邊形搭建三維模型,更多地考慮運(yùn)行的實(shí)時(shí)性,采用紋理、光照等技術(shù)提高逼真度,尋求在真實(shí)感和實(shí)時(shí)性間的平衡,因此非常適合應(yīng)用于需要保證實(shí)時(shí)漫游的水利工程仿真系統(tǒng)。
3)OSG。OSG 使用 OpenGL 技術(shù)開發(fā),是一套基于 C++ 平臺(tái)的應(yīng)用程序接口(API)。OpenGL 技術(shù)為圖形元素(多邊形、線、點(diǎn)等)和狀態(tài)(光照、材質(zhì)、陰影等)的編程提供了標(biāo)準(zhǔn)化的接口。而 OSG 開發(fā)的主要意義在于,將 3D 場(chǎng)景定義為空間中一系列連續(xù)的對(duì)象,以進(jìn)行三維世界的管理。正是由于場(chǎng)景及其參數(shù)定義的特點(diǎn),通過狀態(tài)轉(zhuǎn)化、繪圖管道和自定制等操作,OSG 還可以用于優(yōu)化渲染性能。運(yùn)行 OSG 的平臺(tái)需要具備 OpenGL的支持,以及 C++ 的編譯環(huán)境。
4)其他工具。在場(chǎng)景建模和系統(tǒng)開發(fā)中,還需要借助 ArcGIS,AutoCAD 等軟件。ArcGIS 可以輔助于遙感影像、矢量、數(shù)字高程模型等數(shù)據(jù)處理,AutoCAD 用來將水工建筑物設(shè)計(jì)圖轉(zhuǎn)換為三維建模軟件工具能識(shí)別的數(shù)據(jù)格式。
平臺(tái)以 Visual Studio 為開發(fā)工具,利用 OSG,結(jié)合 OpenGL 函數(shù)庫開發(fā)。水網(wǎng)輸(調(diào))水系統(tǒng)周邊地形建模采用 Terra Vista 軟件集成 DEM、遙感影像和矢量等數(shù)據(jù)自動(dòng)生成;輸(調(diào))水渠道或河流地形模型利用獲得的實(shí)際地形資料采用 Creator API接口編程實(shí)現(xiàn),并自動(dòng)與周邊地形模型形成嵌套建模結(jié)構(gòu),其中周邊地形輔助于用戶沉浸感和空間定位,渠道或河流地形是仿真模擬的核心對(duì)象。地物模型建模按實(shí)際功能需求分 2 種方式:1)僅僅用于瀏覽的地物模型,采用基于圖像的建模方式;2)用于操控的地物模型,采用基于幾何的建模方式。這2 種方式均采用 Creator 軟件實(shí)現(xiàn),后一種方式還需要 AutoCAD 軟件作為輔助工具。集成地形地物三維實(shí)體模型,采用三維 OSG 和 Visual Studio 開發(fā)三維虛擬仿真平臺(tái),在此基礎(chǔ)上,動(dòng)態(tài)耦合一、二維水動(dòng)力和自適應(yīng)調(diào)控等模型的計(jì)算結(jié)果,研發(fā)輸(調(diào))水系統(tǒng)實(shí)時(shí)調(diào)控實(shí)現(xiàn)平臺(tái)。
平臺(tái)開發(fā)流程如圖2 所示。
圖2 平臺(tái)開發(fā)流程
滿足水網(wǎng)輸(調(diào))水系統(tǒng)規(guī)劃建設(shè)與運(yùn)行管理需求的數(shù)據(jù)分為空間和屬性 2 類數(shù)據(jù),對(duì)應(yīng)的仿真綜合數(shù)據(jù)庫可以劃分為空間和屬性數(shù)據(jù)庫,其中屬性數(shù)據(jù)庫又分為監(jiān)測(cè)、業(yè)務(wù)、基礎(chǔ)、多媒體等數(shù)據(jù)庫。監(jiān)測(cè)數(shù)據(jù)庫包括水位、流量、水質(zhì)、閘位等信息,這些信息可用來支撐模型的構(gòu)建,另外,在三維虛擬環(huán)境中實(shí)現(xiàn)水體和閘門信息的可視化表達(dá)。業(yè)務(wù)數(shù)據(jù)庫包括對(duì)輸(調(diào))水進(jìn)行管理的信息,比如調(diào)度指令?;A(chǔ)數(shù)據(jù)庫是存儲(chǔ)水文監(jiān)測(cè)站、水利工程等基礎(chǔ)信息。多媒體數(shù)據(jù)庫用來存儲(chǔ)實(shí)時(shí)監(jiān)測(cè)的視頻、圖片、文本等信息,通過與空間數(shù)據(jù)庫關(guān)聯(lián),可以實(shí)現(xiàn)在三維虛擬環(huán)境中相應(yīng)空間位置的多媒體信息的展示。因?yàn)閷傩詳?shù)據(jù)庫建立是一項(xiàng)龐大工程,在遵循國家、行業(yè)標(biāo)準(zhǔn)的基礎(chǔ)上,可以對(duì)此進(jìn)行內(nèi)容擴(kuò)展。
仿真空間數(shù)據(jù)庫利用三維自動(dòng)建模軟件 Terra Vista 生成??臻g數(shù)據(jù)源包括空間分辨率為 90 m 的數(shù)字化等高線地形圖,經(jīng)拼接組合預(yù)處理后的正射影像圖及以統(tǒng)一空間坐標(biāo)為基礎(chǔ)配準(zhǔn)的水系、道路、水庫、標(biāo)志性物體等矢量點(diǎn),線和面數(shù)據(jù),為在信息空間生成與現(xiàn)實(shí)空間相“映射”的地形地貌提供基礎(chǔ)。將準(zhǔn)備好的數(shù)據(jù)源導(dǎo)入 Terra Vista 軟件工具,通過空間數(shù)據(jù)格式轉(zhuǎn)換、仿真數(shù)據(jù)庫生成參數(shù)設(shè)置、地物矢量數(shù)據(jù)屬性賦值和仿真空間數(shù)據(jù)庫生成等步驟生成仿真空間數(shù)據(jù)庫。仿真空間數(shù)據(jù)庫中的南水北調(diào)中線工程的各種水閘(包括分水閘、節(jié)制閘和退水閘)、倒虹吸、渡槽、橋梁等三維地物模型是利用仿真建模軟件 Multigen Creator 軟件按工程設(shè)計(jì)圖構(gòu)建三維幾何結(jié)構(gòu),并將實(shí)景圖片轉(zhuǎn)換為紋理映射在幾何體上,形成與真實(shí)地物高度相似的地物模型,然后依據(jù)空間位置將其賦值給地物矢量數(shù)據(jù),完成與三維地形地貌的無縫嵌套。
南水北調(diào)工程中線渠道模型是仿真模擬和實(shí)時(shí)調(diào)控的重要對(duì)象,需要精細(xì)化仿真建模,在滿足視覺瀏覽的同時(shí),更重要的是與水動(dòng)力水質(zhì)和閘門自動(dòng)化控制模型相結(jié)合,實(shí)現(xiàn)水量水質(zhì)的可視化模擬和閘門的數(shù)字化、可視化控制。渠道建模以工程設(shè)計(jì)的平面圖和斷面圖為基準(zhǔn);如果工程設(shè)計(jì)斷面不能滿足水動(dòng)力學(xué)模型計(jì)算精度要求,那么可以在設(shè)計(jì)斷面之間增加斷面。
人工建設(shè)渠道斷面形狀比較規(guī)則,各斷面控制點(diǎn)及相鄰斷面之間拓?fù)潢P(guān)系明確,方便利用空間數(shù)據(jù)結(jié)構(gòu)描述,利用 Creator API 接口程序化編程可自動(dòng)生成三維渠道模型,如圖3 所示。
圖3 三維渠道模型
仿真空間數(shù)據(jù)庫組織是利用 Open Flight 格式外部引用節(jié)點(diǎn)的方式存儲(chǔ)和管理地形地物實(shí)體模型,并設(shè)置唯一標(biāo)識(shí) ID。仿真平臺(tái)采用 SQL Server 數(shù)據(jù)庫管理地物實(shí)體模型的標(biāo)識(shí)名、地理坐標(biāo)、文字、圖片、視頻等屬性信息,另外存儲(chǔ)與仿真模擬和調(diào)控相關(guān)的數(shù)據(jù),如丹江口水庫的調(diào)度規(guī)則、分水口的分水量、退水口的退水量、節(jié)制閘門的過水量、受水區(qū)水量供需平衡分析結(jié)果、水動(dòng)力水質(zhì)模型的計(jì)算結(jié)果、節(jié)制閘門控制模型的開啟和關(guān)閉操作結(jié)果等。
OSG 包含用于圖形圖像應(yīng)用程序開發(fā)的系列開源圖形庫,為場(chǎng)景層次化管理和圖形渲染優(yōu)化提供了統(tǒng)一架構(gòu)[10–11]。它利用標(biāo)準(zhǔn)化面向?qū)ο笳Z言 C++和標(biāo)準(zhǔn)模板庫(STL)編寫庫文件和源代碼,使用具有國際圖形編程工業(yè)標(biāo)準(zhǔn)的 OpenGL 編寫方便調(diào)用和二次開發(fā)的渲染 API,可以跨平臺(tái)運(yùn)行 Windows,Unix,Linux 等操作系統(tǒng)。
OSG 采用多叉樹數(shù)據(jù)結(jié)構(gòu)場(chǎng)景圖組織方式管理海量地形地貌空間數(shù)據(jù),提升了計(jì)算機(jī)圖形渲染效率?;?OSG 開發(fā)的虛擬仿真平臺(tái)利用主和輔助線程分工管理平臺(tái)的交互操作和圖形的動(dòng)態(tài)渲染。程序?qū)崿F(xiàn)流程主要包括程序初始化、場(chǎng)景實(shí)時(shí)渲染和程序退出 3 個(gè)部分[12–13],如圖4 所示。
圖4 程序?qū)崿F(xiàn)流程
南水北調(diào)中線工程涉及海量的地形地物數(shù)據(jù),若全部數(shù)據(jù)一次性載入系統(tǒng),導(dǎo)致單機(jī)瀏覽時(shí)渲染效率低下,場(chǎng)景漫游不流暢,采用數(shù)據(jù)分頁技術(shù)對(duì)虛擬場(chǎng)景數(shù)據(jù)分層分塊載入和卸載,增強(qiáng)用戶的沉浸感,提高系統(tǒng)交互性能。數(shù)據(jù)分頁技術(shù)[14]指在場(chǎng)景漫游時(shí)只將位于視椎體內(nèi)的地形地物模型載入內(nèi)存,當(dāng)視點(diǎn)或視向發(fā)生移動(dòng)變換,首先將移出視域的地形地物數(shù)據(jù)從內(nèi)存中卸載,再將進(jìn)入視域新的地形地物數(shù)據(jù)載入內(nèi)存渲染。數(shù)據(jù)分頁的動(dòng)態(tài)調(diào)度機(jī)制如下:在顯示當(dāng)前視域中的水網(wǎng)工程虛擬場(chǎng)景對(duì)象(可見對(duì)象)的同時(shí),根據(jù)視點(diǎn)的移動(dòng)方向預(yù)判下一步可能載入的虛擬場(chǎng)景對(duì)象(預(yù)可見對(duì)象),同時(shí)確定短時(shí)間內(nèi)不可能被看到的虛擬場(chǎng)景對(duì)象(不可見對(duì)象),從而實(shí)現(xiàn)對(duì)地形地物數(shù)據(jù)的準(zhǔn)確加載和合理卸載。OSG 提供了 osgDB::Database Pager類內(nèi)置的數(shù)據(jù)線程 Database Thread 實(shí)現(xiàn)海量地形地物數(shù)據(jù)的動(dòng)態(tài)調(diào)度,它通過系統(tǒng)的視景器在每幀執(zhí)行到更新遍歷函數(shù) updata Traversal,自動(dòng)將不在當(dāng)前頁面有一段時(shí)間的虛擬場(chǎng)景子節(jié)點(diǎn)從系統(tǒng)中移除來釋放內(nèi)存空間,并將進(jìn)入當(dāng)前視域頁面的虛擬場(chǎng)景子節(jié)點(diǎn)加入渲染列表顯示在計(jì)算機(jī)屏幕上。
數(shù)據(jù)分頁調(diào)度技術(shù)基于 OSG::Database Pager 和Paged LOD 節(jié)點(diǎn)相結(jié)合的方式實(shí)現(xiàn)對(duì)南水北調(diào)中線工程大范圍場(chǎng)景模型構(gòu)成的海量地形地物數(shù)據(jù)的動(dòng)態(tài)調(diào)度。程序設(shè)計(jì)主要流程如下:
1)將生成的南水北調(diào)中線工程三維模型轉(zhuǎn)換為 Paged LOD 節(jié)點(diǎn),利用四叉樹數(shù)據(jù)結(jié)構(gòu)組織場(chǎng)景Paged LOD 節(jié)點(diǎn),形成整個(gè)三維場(chǎng)景的金字塔層次結(jié)構(gòu)。
2)設(shè)置南水北調(diào)中線工程場(chǎng)景模型 Paged LOD節(jié)點(diǎn)的相關(guān)參數(shù),這些參數(shù)包括地形地物模型的存儲(chǔ)路徑、模型加載的范圍和半徑、模型中心點(diǎn)位置等。在視點(diǎn)位置和方向發(fā)生變化時(shí),Paged LOD 節(jié)點(diǎn)依據(jù)設(shè)置參數(shù)自動(dòng)判定所需加載的模型文件。
3)設(shè)置南水北調(diào)中線工程場(chǎng)景分頁數(shù)據(jù)庫類Database Pager 的數(shù)據(jù)調(diào)度參數(shù),這些參數(shù)包括場(chǎng)景繪制策略、場(chǎng)景數(shù)據(jù)是否預(yù)編譯、系統(tǒng)運(yùn)行時(shí)每幀最大編譯的個(gè)數(shù)、系統(tǒng)仿真的目標(biāo)幀率、模型數(shù)據(jù)過期時(shí)間及幀數(shù)等。
4)將南水北調(diào)中線工程場(chǎng)景的 Paged LOD 節(jié)點(diǎn)注冊(cè)到 Database Pager 分頁數(shù)據(jù)庫中,同時(shí)開啟線程Database Thread 處理 Paged LOD 節(jié)點(diǎn)的模型數(shù)據(jù)加載和卸載,加快場(chǎng)景模型的渲染速度。
碰撞檢測(cè)主要包括閘門起落不穿過地形、視點(diǎn)漫游不穿過地面或者地物、實(shí)體模型的鼠標(biāo)操作選取。閘門所在空間位置的地形高程值不變,而閘門運(yùn)行遵循一定規(guī)則,只需簡(jiǎn)單幾何計(jì)算就能判定閘門與地形是否接觸。視點(diǎn)與地形的碰撞檢測(cè)是實(shí)時(shí)檢測(cè)比較視點(diǎn)與所處位置地形的高程值高低關(guān)系,若視點(diǎn)高程值低于地形高程值,將其高程值調(diào)整至地面上某一高度。視點(diǎn)與地物模型碰撞檢測(cè)是通過建立物體最小包圍盒,利用包圍盒相交測(cè)試判定視點(diǎn)與地物模型的相交情況。實(shí)體模型的鼠標(biāo)操作選取與此相類似。
南水北調(diào)中線工程通過節(jié)制閘、分水閘、退水閘等各種功能的閘門對(duì)輸水渠道的水流過程動(dòng)態(tài)調(diào)節(jié),是輸(調(diào))水系統(tǒng)中的重點(diǎn)操控的水利工程建筑物。為了實(shí)現(xiàn)數(shù)字空間閘門與物理空間閘門的聯(lián)動(dòng),需要利用幾何建模技術(shù)構(gòu)建閘門模型。按照實(shí)際的閘門結(jié)構(gòu)尺寸和本身的紋理從形狀和外觀上對(duì)實(shí)體模擬,同時(shí)大量采用紋理映射等輔助技術(shù)手段,降低模型的復(fù)雜度。主要分為以下 4 個(gè)步驟:
1)獲得閘門建模數(shù)據(jù)。閘門模型幾何形狀數(shù)據(jù)主要來自設(shè)計(jì)圖,包括模型三視圖、剖面圖等結(jié)構(gòu)尺寸數(shù)據(jù);閘門模型紋理數(shù)據(jù)主要來自實(shí)體的三視角正向照片或各部分正向照片。
2)確定閘門模型的層次結(jié)構(gòu)。MultiGen 建模工具提供了樹狀層次結(jié)構(gòu)組織管理模型,為實(shí)現(xiàn)閘門模型的特定結(jié)構(gòu),優(yōu)化模型渲染效率,建模時(shí)需要按樹狀層次結(jié)構(gòu)對(duì)模型各部分進(jìn)行分解。
3)建立閘門模型。根據(jù)閘門模型結(jié)構(gòu)尺寸和設(shè)計(jì)的層次結(jié)構(gòu),在 MultiGen Creator 中采用幾何法建立三維模型。按照系統(tǒng)渲染量的要求規(guī)劃所建模型的總面數(shù),在滿足模擬效果的前提下,盡量使用較少的多邊形,能合并的面應(yīng)該盡量合并。同時(shí)刪除場(chǎng)景瀏覽時(shí)不可見的面(冗余面),如建筑物的底座面、內(nèi)墻面及建筑物內(nèi)部的連接面等,以降低整個(gè)場(chǎng)景的復(fù)雜度,提高響應(yīng)速度。
4)使用紋理映射。為顯示閘門模型的細(xì)節(jié),提高模型逼真度,一般采取紋理映射的方法,在對(duì)應(yīng)位置的多邊形面上“貼”上相應(yīng)的紋理圖片,代替詳細(xì)模型。這樣不但可以極大地減少模型的多邊形數(shù)據(jù)和模型復(fù)雜度,而且可以有效提升模擬效果,提高圖像輸出時(shí)的顯示速度。
對(duì)閘門啟閉操控涉及到閘門部件的運(yùn)動(dòng)。對(duì)運(yùn)動(dòng)部件實(shí)體的建模首先要構(gòu)造運(yùn)動(dòng)對(duì)象,MultiGen中提供了功能較強(qiáng)的運(yùn)動(dòng)鏈分析。通過調(diào)整模型的結(jié)構(gòu)樹層次關(guān)系,將需要運(yùn)動(dòng)的實(shí)體部件按照相互關(guān)系分別置于不同的運(yùn)動(dòng)自由度(DOF)節(jié)點(diǎn)下,然后通過控制 DOF 節(jié)點(diǎn)實(shí)現(xiàn)部件的運(yùn)動(dòng)模擬。因?yàn)楦?DOF 節(jié)點(diǎn)的運(yùn)動(dòng)是基于其本身的局部坐標(biāo)系,因此這些節(jié)點(diǎn)的運(yùn)動(dòng)可不考慮整體的坐標(biāo)變換情況,只需提供局部坐標(biāo)運(yùn)動(dòng)方程即可。某 DOF 節(jié)點(diǎn)位置的變化會(huì)牽動(dòng)下一級(jí) DOF 節(jié)點(diǎn),以繼承上一級(jí)節(jié)點(diǎn)的運(yùn)動(dòng),同時(shí)下一級(jí)節(jié)點(diǎn)也可在自身局部坐標(biāo)系下運(yùn)動(dòng),整個(gè)運(yùn)動(dòng)的合成效果是 2 種運(yùn)動(dòng)的疊加。
南水北調(diào)中線區(qū)域的地形地物三維可視化與漫游是通過繼承 osg::Matrix Manipulator 操控?cái)z像機(jī)實(shí)現(xiàn),路徑自動(dòng)漫游由 OSG 提供的Animation Path Callback 回調(diào)函數(shù)實(shí)現(xiàn),該函數(shù)有對(duì)應(yīng)格式的文件,當(dāng)采集路徑節(jié)點(diǎn)時(shí),需要將獲取的攝像機(jī)位置和姿態(tài)角向量轉(zhuǎn)換為 Path 文件能存儲(chǔ)的四元數(shù)。通過利用這類的應(yīng)用,實(shí)現(xiàn)了包含手動(dòng)、路徑和視點(diǎn)定位的多模式控制等漫游。
二維平面導(dǎo)航是將三維場(chǎng)景的平面投影區(qū)域映射到二維平面導(dǎo)航圖上,建立三維場(chǎng)景的真實(shí)世界平面坐標(biāo)與二維平面導(dǎo)航圖邏輯坐標(biāo)系的對(duì)應(yīng)關(guān)系。視點(diǎn)在三維場(chǎng)景上的移動(dòng)變化會(huì)實(shí)時(shí)反映在平面導(dǎo)航圖上,與之相應(yīng)的是,鼠標(biāo)在平面導(dǎo)航圖上的移動(dòng)變化就會(huì)導(dǎo)致視點(diǎn)在三維場(chǎng)景中移動(dòng)變化,這樣可以避免用戶在大范圍三維場(chǎng)景中漫游時(shí)迷失方向,方便用戶在真實(shí)世界中瀏覽場(chǎng)景。該功能實(shí)現(xiàn)步驟如下:
1)利用研究區(qū)域和三維場(chǎng)景統(tǒng)一投影坐標(biāo)系的GIS 數(shù)據(jù)文件,在 ArcGIS 軟件中導(dǎo)出圖片;或者在Creator 軟件平臺(tái)上打開三維場(chǎng)景,保證視點(diǎn)垂直于地面,用抓屏軟件截取對(duì)應(yīng)位置的場(chǎng)景圖片保存為BMP 格式的圖形文件,作為平面導(dǎo)航圖。
2)在編程環(huán)境的資源管理器中載入導(dǎo)航圖片并賦值 ID 為 IDB_EAGLEBMP,在新建對(duì)話框上添加Picture 控件,選擇其關(guān)聯(lián)類型為 BITMAP,然后建立導(dǎo)航圖與控件的聯(lián)系,這樣圖片會(huì)顯示在控件中。適當(dāng)調(diào)整對(duì)話框大小,使導(dǎo)航圖完全覆蓋對(duì)話框。
3)為保證對(duì)話框上視點(diǎn)的位置變化與三維場(chǎng)景中視點(diǎn)的變化同步協(xié)調(diào),須計(jì)算對(duì)話框的邏輯坐標(biāo)系和場(chǎng)景的世界坐標(biāo)系之間的映射關(guān)系,即縮放比例。在三維場(chǎng)景和導(dǎo)航圖上分別選擇相對(duì)應(yīng)的 2 處位置作為控制點(diǎn),其中較簡(jiǎn)便且保證計(jì)算精度的方法是利用左上、右下 2 個(gè)角點(diǎn)的位置坐標(biāo),計(jì)算出三維場(chǎng)景中縱橫方向的平面空間尺度,然后獲取導(dǎo)航圖的高度和寬度,從而可以計(jì)算出真實(shí)場(chǎng)景與導(dǎo)航圖坐標(biāo)點(diǎn)之間的轉(zhuǎn)換值。
4)平臺(tái)運(yùn)行中 2 個(gè)坐標(biāo)系中視點(diǎn)位置變化實(shí)時(shí)交互響應(yīng),其中用實(shí)心橢圓表示視點(diǎn)在平面導(dǎo)航圖片邏輯坐標(biāo)系中的實(shí)時(shí)位置。隨著鼠標(biāo)在邏輯坐標(biāo)系中的變化,實(shí)時(shí)捕捉鼠標(biāo)的位置,然后通過變換關(guān)系,計(jì)算出視點(diǎn)在真實(shí)世界中的空間位置。當(dāng)用戶在三維場(chǎng)景中視點(diǎn)位置變化時(shí),在對(duì)話框類中用函數(shù) SetTimer 設(shè)置定時(shí)器,通知平臺(tái)間隔一定時(shí)間獲取視點(diǎn)在世界坐標(biāo)系中的位置,將其轉(zhuǎn)換為邏輯坐標(biāo)系中對(duì)應(yīng)位置。由于平面導(dǎo)航圖不能反映視點(diǎn)的高程信息,為防止視點(diǎn)進(jìn)入地面,導(dǎo)航圖中視點(diǎn)坐標(biāo)值轉(zhuǎn)換到世界坐標(biāo)系的過程中,則需要開啟碰撞檢測(cè)功能,當(dāng)檢測(cè)到視點(diǎn)與地面接觸時(shí),此時(shí)需要修改視點(diǎn)高程值至距離地面上一定的高度。
經(jīng)過這 4 個(gè)步驟,就能實(shí)現(xiàn)導(dǎo)航圖與真實(shí)世界的實(shí)時(shí)聯(lián)動(dòng)。
三維動(dòng)態(tài)查詢是在計(jì)算機(jī)生成的虛擬環(huán)境中動(dòng)態(tài)瀏覽時(shí),操作鼠標(biāo)對(duì)場(chǎng)景中的水庫、分水閘、節(jié)制閘、退水閘、倒虹吸、渡槽等實(shí)體水利工程屬性信息查詢。屬性信息查詢分為基礎(chǔ)和動(dòng)態(tài)信息查詢[15]?;A(chǔ)信息查詢就是鼠標(biāo)點(diǎn)中水庫、閘門等實(shí)體模型時(shí),存儲(chǔ)在數(shù)據(jù)庫中與實(shí)體相應(yīng)的基礎(chǔ)信息就會(huì)以對(duì)話框方式顯示在計(jì)算機(jī)屏幕上,如點(diǎn)中“丹江口水庫”大壩模型時(shí),丹江口水庫名稱、位置及水庫特性信息就會(huì)顯示。動(dòng)態(tài)屬性信息查詢是選中實(shí)體模型時(shí),存儲(chǔ)在數(shù)據(jù)庫中隨時(shí)間變化與實(shí)體模型相應(yīng)的屬性信息顯示出來,并且動(dòng)態(tài)發(fā)生變化,如隨時(shí)間推移,丹江口水庫入庫流量、陶岔渠首大閘引水流量等均會(huì)發(fā)生變化。
主要利用 OSG 的 NodeVistor 繼承類實(shí)現(xiàn)實(shí)體模型的拾取和屬性信息的查詢。首先定義 osgUtil::IntersectVisitor 類對(duì)象,并聲明線段檢測(cè)方式,然后利用該線段探測(cè)場(chǎng)景中實(shí)體模型是否被選中,若選中,則返回實(shí)體模型的唯一標(biāo)識(shí) ID。利用此 ID,就能通過數(shù)據(jù)庫結(jié)構(gòu)化查詢語言 select(*.*,from database,where ID="*.*"),將與實(shí)體模型相關(guān)的各類信息以對(duì)話框方式顯示,如圖5 所示。隨時(shí)間發(fā)生變化的屬性信息,如分水口的水量過程或者丹江口水庫的入流過程,按時(shí)間查詢語句 select(*.*,from database, where time="*.*")提取時(shí)間序列信息,在屏幕或?qū)υ捒蛏蟿?dòng)態(tài)繪制屬性值隨時(shí)間發(fā)生變化的曲線圖。
圖5 陶岔渠首屬性信息查詢
南水北調(diào)中線各分水口門的分水量的計(jì)算為科學(xué)調(diào)度提供了依據(jù)。為直觀地表現(xiàn)推薦調(diào)水方案的直觀顯示,采用文字標(biāo)注的方式將計(jì)算的方案結(jié)果展現(xiàn)在三維場(chǎng)景中,每個(gè)地區(qū)調(diào)水量的顯示位置對(duì)應(yīng)于相應(yīng)的省、地市。對(duì)調(diào)水量顯示時(shí),不同層次采用不同顏色,或分層次顯示,即當(dāng)視點(diǎn)在某個(gè)區(qū)間范圍時(shí),顯示對(duì)應(yīng)層次的調(diào)水方案。具體過程是:當(dāng)視點(diǎn)拉遠(yuǎn)至一定高度時(shí),整個(gè)建模區(qū)域出現(xiàn)在窗口中,記錄此時(shí)的視點(diǎn)空間位置。尋找研究區(qū)域平面投影的臨界外接圓,圓心為O,外接圓與視點(diǎn)的連接即為視椎體觀察區(qū)域,根據(jù)等分A0O的距離確定市級(jí)與省級(jí)顯示臨界空間位置為A1、市級(jí)和分水口顯示臨界空間位置為A2,分別由A1,A2引出2 條與A0B0,A0C0平行的射線與B0C0相較于B1和C1,B2和C2,從而確定顯示區(qū)域。OSG 提供了二、三維文字顯示方法,當(dāng)場(chǎng)景中文字?jǐn)?shù)據(jù)量較多時(shí),使用三維文字會(huì)加重系統(tǒng)的渲染負(fù)擔(dān),因此可以采用二維文字顯示方法。文字標(biāo)注要滿足標(biāo)注位置與顯示內(nèi)容相關(guān),這樣就能一目了然地了解各地區(qū)的受水情況??紤]到文字的大小、朝向、顏色、對(duì)齊方式也影響顯示效果,因此首先為顯示的文字內(nèi)容創(chuàng)建一個(gè) Text 對(duì)象,并指定文字的位置、方向、對(duì)齊方式和顏色值等相關(guān)參數(shù)。文字的字體類型可通過創(chuàng)建 Font 對(duì)象指定,并將其與 Text 對(duì)象關(guān)聯(lián);其次為每層顯示內(nèi)容設(shè)置一個(gè) Geode 節(jié)點(diǎn),使用函數(shù)addDrawable 將多個(gè) Text 對(duì)象添加到相應(yīng)的 Geode 節(jié)點(diǎn),最后將 Geode 節(jié)點(diǎn)添加到場(chǎng)景圖形節(jié)點(diǎn)中。文字相關(guān)屬性設(shè)置如下代碼:
osg::ref_ptr < osgText::Font > font = osgText::readFontFile (“fonts/宋體 .tiff”);//指定文字的字體類型
osg::ref_ptr < osgText::Text > text = new osgText::Text;
text- > setFont (font.get( ));//將字體類型對(duì)象與文本對(duì)象關(guān)聯(lián)起來
text- > setText (“水調(diào)方案顯示”);//設(shè)置顯示內(nèi)容
text- > setPosition (osg::Vec3 (x, y, z));//設(shè)置字體的空間位置
text- > setAxisAlignment (osgText::Text::SCREEN); //設(shè)置始終朝向窗口的廣告牌式的效果
text- > setAlignment (osgText::Text::CENTRE_CENTRUE); //設(shè)置文字內(nèi)容水平和垂直均居中位置
text- > setColor (osg::Vec4(red, green, blue, alpha)); //設(shè)置字體的顏色,不同層次對(duì)應(yīng)不同顏色
中線工程距離長、沿程控制節(jié)點(diǎn)多,來水的不確定性和控制閘門的調(diào)整都可能會(huì)引起沿程水面線的變化,這種變化是否影響中線輸水渠道安全,則需要水動(dòng)力學(xué)模型實(shí)時(shí)動(dòng)態(tài)模擬掌握各處水力過程的情況。由于中線渠道斷面規(guī)則、比較順直、距離較長,因此可采用一維水動(dòng)力學(xué)模型模擬沿程水位變化過程。為直觀地表現(xiàn)沿程各處的水位、水量隨時(shí)間的變化過程,通過實(shí)時(shí)獲取各計(jì)算斷面處水位值和水面與斷面交點(diǎn)空間坐標(biāo),構(gòu)建三維水面網(wǎng)格,并采用透明紋理映射至網(wǎng)格上,從而實(shí)現(xiàn)三維水面可視化動(dòng)態(tài)仿真[16]。在三維場(chǎng)景中,既可以直觀地觀察沿程水位變化情況和控制節(jié)點(diǎn)處的水位漲落,又能清晰地查看水體淹沒處的渠道情況,如圖6所示。此外,該功能模塊還支持污染物可視化仿真的能力。如果某處發(fā)生污染物泄漏情況,則需要輔助水質(zhì)演變模型計(jì)算污染物的擴(kuò)散運(yùn)移過程,根據(jù)模型計(jì)算的沿程污染物分布,通過針對(duì)不同的污染物濃度值,建立一一對(duì)應(yīng)的顏色條帶[17–18],將其映射到水面網(wǎng)格上,在三維場(chǎng)景上就能直觀地顯示污染物隨著時(shí)間推移的空間變化過程。
圖6 三維水面動(dòng)態(tài)模擬
南水北調(diào)中線工程二維水動(dòng)力學(xué)模擬能夠準(zhǔn)確地描述水力過程特征、解釋污染物擴(kuò)散機(jī)理和調(diào)度指令的生成,流場(chǎng)動(dòng)態(tài)可視化能夠更加清晰直觀和高效地輔助于這些問題的科學(xué)研究和生產(chǎn)實(shí)踐。流場(chǎng)模擬方法有多種,而證明較為有效的方法是粒子系統(tǒng)的模擬[19]。根據(jù)粒子的出生、運(yùn)動(dòng)和死亡規(guī)則,可以實(shí)現(xiàn)對(duì)流場(chǎng)的動(dòng)態(tài)模擬,如圖7 所示。粒子的出生位置由計(jì)算網(wǎng)格或者虛擬網(wǎng)格控制;粒子運(yùn)動(dòng)則由水動(dòng)力學(xué)模型控制,將得到水流歐拉場(chǎng)轉(zhuǎn)換為拉格朗日?qǐng)?,能夠更加自然地表示水流運(yùn)動(dòng),粒子屬性值則根據(jù)計(jì)算網(wǎng)格節(jié)點(diǎn)屬性值通過空間插值完成。為保證相鄰時(shí)刻的粒子運(yùn)動(dòng)能夠光滑連續(xù)進(jìn)行,需要對(duì)相鄰時(shí)刻的計(jì)算結(jié)果進(jìn)行時(shí)間插值。粒子的死亡則根據(jù)流場(chǎng)模擬效果和粒子是否移出研究區(qū)域邊界判斷。線性箭頭表示粒子形狀,箭頭指向表示流速方向,長短表示流速大小,顏色值表示為流速大小、污染物濃度或者水位[20]。
圖7 流場(chǎng)動(dòng)態(tài)可視化
南水北調(diào)中線工程渠道運(yùn)行控制是利用建成的閘站監(jiān)控系統(tǒng)實(shí)現(xiàn)全線集中自動(dòng)化控制,保證節(jié)制閘按閘前常水位方式實(shí)現(xiàn)實(shí)時(shí)閉環(huán)自動(dòng)控制。在虛擬環(huán)境中對(duì)閘門遠(yuǎn)程控制,能夠使操作人員有身臨其境的感覺,同時(shí)保證操作的準(zhǔn)確性。具體方式是利用信息采集系統(tǒng),獲取分水閘、節(jié)制閘、退水閘、倒虹吸工作閘、排冰閘等水工建筑物的閘門開度,閘前閘后水位,過閘流量,啟閉設(shè)備及供電系統(tǒng)運(yùn)行參數(shù)等信息,根據(jù)這些信息,在虛擬環(huán)境中閘門開度也會(huì)發(fā)生變化,與現(xiàn)場(chǎng)閘門保持一致;利用閘前閘后水位情況繪制三維水面;同時(shí)將啟閉設(shè)備及供電系統(tǒng)的性能信息顯示在虛擬環(huán)境中相應(yīng)位置。用戶也可以在平臺(tái)上設(shè)置閘門的開啟度及啟閉設(shè)備的運(yùn)行參數(shù),遠(yuǎn)程控制閘門和啟閉設(shè)備的運(yùn)行。以節(jié)制閘為例,圖8 說明了閘門實(shí)時(shí)調(diào)控前后的情景。
圖8 閘門實(shí)時(shí)調(diào)控
以南水北調(diào)中線工程為例,探討了虛擬仿真技術(shù)在水網(wǎng)輸(調(diào))水工程管理中的應(yīng)用技術(shù),初步搭建了基于三維虛擬仿真的輸(調(diào))水系統(tǒng)實(shí)時(shí)調(diào)控實(shí)現(xiàn)平臺(tái)。結(jié)論如下:
1)虛擬仿真技術(shù)為用戶創(chuàng)建了立體直觀和高度沉浸感的虛擬環(huán)境,水利專業(yè)模型能夠真實(shí)模擬預(yù)測(cè)水流運(yùn)動(dòng)過程和閘門的實(shí)時(shí)調(diào)度方式。將虛擬仿真和水利數(shù)值模擬相結(jié)合形成的流域仿真模擬技術(shù)為水網(wǎng)輸(調(diào))水工程規(guī)劃設(shè)計(jì)和運(yùn)行管理提供了新的視角和研究思路。
2)開源 OSG 三維視景引擎利用場(chǎng)景樹結(jié)構(gòu)對(duì)三維模型進(jìn)行管理,詳細(xì)研究了閘門的精細(xì)建模方法。利用數(shù)據(jù)分頁調(diào)度技術(shù)對(duì)海量地形地物動(dòng)態(tài)調(diào)度,實(shí)現(xiàn)了三維模型的快速瀏覽和迅捷定位。碰撞檢測(cè)技術(shù),增強(qiáng)了用戶的沉浸感和實(shí)時(shí)交互能力,為開發(fā)具有自己知識(shí)產(chǎn)權(quán)的軟件產(chǎn)品提供了工具。
3)將地形地物三維模型載入輸(調(diào))水系統(tǒng)實(shí)時(shí)調(diào)控實(shí)現(xiàn)平臺(tái),實(shí)現(xiàn)了南水北調(diào)中線工程渠道、閘門、橋梁、倒虹吸等實(shí)物及周圍場(chǎng)景的真實(shí)再現(xiàn),方便用戶在計(jì)算機(jī)上對(duì)真實(shí)環(huán)境多視角觀看,為工程運(yùn)行管理提供了直觀可視化平臺(tái)。
4)將一、二維水動(dòng)力和自適應(yīng)調(diào)控的模型計(jì)算結(jié)果以可視化仿真方式融合到南水北調(diào)中線渠道中,不僅可以預(yù)演各種調(diào)度方案下的水流運(yùn)行狀態(tài),而且對(duì)閘門啟閉變化導(dǎo)致的水流變化情況進(jìn)行仿真模擬??梢越尤雽?shí)時(shí)監(jiān)測(cè)數(shù)據(jù)進(jìn)行模擬計(jì)算,將一、二維水動(dòng)力學(xué)模型的三維水面和流場(chǎng)變化可視化,同時(shí)將調(diào)控模型計(jì)算的閘門啟閉開度信息反饋到虛擬和真實(shí)環(huán)境中,達(dá)到真實(shí)閘門和虛擬閘門的聯(lián)動(dòng)實(shí)時(shí)控制。
5)本次僅對(duì)虛擬仿真技術(shù)在南水北調(diào)中線工程的應(yīng)用效果進(jìn)行了初步探討,后續(xù)還要結(jié)合復(fù)雜的水網(wǎng)工程系統(tǒng)進(jìn)行仿真模擬分析與實(shí)時(shí)調(diào)控研究,增強(qiáng)研究成果的實(shí)用性。
參考文獻(xiàn):
[1] 王中根,李宗禮,劉昌明,等. 河湖水系連通的理論探討[J]. 自然資源學(xué)報(bào),2011,26 (3): 523-529.
[2] “國家智能水網(wǎng)工程框架設(shè)計(jì)”項(xiàng)目組. 水利現(xiàn)代化建設(shè)的綜合性載體——智能水網(wǎng)[J]. 水利發(fā)展研究,2013 (3):1-8.
[3] 姚仕明. 三峽葛洲壩通航水流數(shù)值模擬及航運(yùn)調(diào)度系統(tǒng)研究[D]. 北京:清華大學(xué),2006.
[4] 崔巍,楊開林,謝省宗,等. 長距離調(diào)水工程虛擬仿真系統(tǒng)開發(fā)研究[J]. 水利水電技術(shù),2008,39 (3) : 70-74.
[5] 鐘登華,宋洋,劉東海,等. 大型引水工程施工三維可視化仿真系統(tǒng)研究[J]. 系統(tǒng)工程理論與實(shí)踐,2003,23 (11):111-118.
[6] 胡孟,楊開林,石維新. 南水北調(diào)中線北京段輸水系統(tǒng)數(shù)字三維視景仿真[J]. 南水北調(diào)與水利科技,2005,3 (2):6-8,11.
[7] 張尚弘,趙剛,宋博,等. 南水北調(diào)中線工程三維仿真系統(tǒng)開發(fā)[J]. 南水北調(diào)與水利科技,2007,5 (2) : 31-35.
[8] 于翔,解建倉,姜仁貴,等. 水利工程三維可視化仿真研究與應(yīng)用[J]. 水資源與水工程學(xué)報(bào),2016,27 (4) : 152-156.
[9] LAI J S, CHANG W Y, CHAN Y C, et al. Development of a 3D virtual environment for improving public participation: Case study——The Yuansantze Flood Diversion Works Project[J].Advanced Engineering Informatics,2011,25 (2): 208-223.
[10] 張昊. 基于 OSG 的道路三維實(shí)時(shí)交互式可視化技術(shù)研究[D]. 長沙:中南大學(xué),2010.
[11] 姚仕明. 三峽—葛洲壩通航水流數(shù)值模擬及航運(yùn)調(diào)度系統(tǒng)研究[D]. 北京:清華大學(xué),2006.
[12] 曲兆松,禹明忠,王世容,等. 流域三維虛擬仿真平臺(tái)研究[J]. 水力發(fā)電學(xué)報(bào),2006,25 (3): 40-44.
[13] 萬定生,徐亮. 基于 OSG 的水利工程三維可視化系統(tǒng)研究與應(yīng)用[J]. 計(jì)算機(jī)與數(shù)字工程,2009,37 (4): 135-150.
[14] 鄧世軍,王永杰,竇華成,等. 數(shù)據(jù)分頁技術(shù)的海量三維數(shù)據(jù)模型動(dòng)態(tài)調(diào)度[J]. 測(cè)繪科學(xué),2013 (4): 101-104.
[15] 冶運(yùn)濤. 流域水沙過程虛擬仿真研究[D]. 北京:清華大學(xué),2009.
[16] 冶運(yùn)濤,張尚弘,王興奎. 三峽庫區(qū)洪水演進(jìn)三維可視化仿真研究[J]. 系統(tǒng)仿真學(xué)報(bào),2009,21 (14): 4379-4382,4388.
[17] 冶運(yùn)濤,張尚弘,王興奎. 三峽庫區(qū)河道泥沙沖淤過程動(dòng)態(tài)仿真研究[J]. 系統(tǒng)仿真學(xué)報(bào),2009,21 (15):4806-4810.
[18] 冶運(yùn)濤,蔣云鐘,梁犁麗,等. 虛擬流域環(huán)境中河道演變的整體自動(dòng)建模及可視化分析[J]. 水科學(xué)進(jìn)展,2012,23 (2): 170-178.
[19] 張尚弘,趙剛,冶運(yùn)濤,等. 數(shù)字流域仿真系統(tǒng)中水流模擬技術(shù)[J]. 系統(tǒng)仿真學(xué)報(bào),2008,20 (10): 2628-2632.
[20] 冶運(yùn)濤,蔣云鐘,梁犁麗. 流域虛擬仿真中水沙模擬時(shí)空過程三維可視化[J]. 水科學(xué)進(jìn)展,2011,22 (2): 249-257.