I谨以此文献给我的妻子、儿子,我的父母和所有关心、爱护我的人-------------------李勃IIIIIIV虚拟海洋与三维可视化仿真引擎的研究与开发摘要海洋是一个巨大复杂、各种因素相互影响,多类过程彼此作用的时变系统。中国是一个海洋大国,社会和经济发展必然越来越多地依赖海洋。“数字海洋”是由海量、多分辨率、多时相、多类型海洋监测监视数据及其分析算法构建而成的海洋信息系统。从国家发展战略的高度出发,我国将“数字海洋”列入国家海洋科学技术发展计划。随着这一发展目标的确定和实施,运用数字化手段统一处理和表现海洋数据和现象已成为迫切需要解决的重大课题。本文设计了面向“数字海洋”应用的虚拟海洋三维可视化仿真引擎(Virtual-RealityandVisualizationEngineofOcean)—i4Ocean,其中“i4”代表虚拟海洋可视化仿真的浸没感(Immersion)、交互性(Interactivity)、构想性(Imagination)和智慧性(Intelligence)。引擎不借助其它地理信息系统软件的二次开发功能,全部基于底层开发,具有自主知识产权。另外,引擎除了界面交互部分的实现借助于MFC类库之外,其他全部功能都不依赖MFC开发环境,便于引擎的跨平台和跨系统交互。i4Ocean为海洋数据的管理提供了一种海洋时空数据模型支持,该模型能很好的描述和存储海洋时空数据和特征数据。引擎使用可编程特效文件来管理和实现海洋中复杂的光影效果和可视化效果。i4Ocean包含资源管理、场景管理、渲染管理和交互管理四大功能模块,为用户和开发者提供实时交互的三维海洋虚拟环境搭建,海洋数据可视化等基本功能。用户和开发者可以基于引擎快速方便的搭建海洋平台,并扩展和增加自己的功能。最后基于引擎模拟了海上溢油现象,实现在海面风场和水下流场的影响下,油粒子扩散、漂移全过程;并搭建了海洋水文环境要素可视化系统,实现了中国东海水文环境数据球面三维体绘制和三维矢量场可视化。本文的主要贡献有:(1)设计和实现了虚拟海洋与三维可视化仿真引擎—i4Ocean。本文采用模型-视图-适配器-特效(Model-View-Adapter-Effect)框架模式搭建引擎底层架构,进行界面、交互、功能和特效的封装。上述四个部分之间的联系弱化,实现了弱耦合的关系,视图层和功能层分离,允许更改视图层代码V而不用重新编译模型和适配器代码。同时引擎为开发者提供了数据、交互、功能和特效的扩展接口,以便增加新的数据、功能和特效。i4Ocean封装和实现了海洋可视化仿真功能模块,用户和开发者可以基于引擎快速搭建三维海洋可视化仿真平台。(2)提出了适合海洋数据的球面体绘制方法。传统的光线投射体绘制算法在长方体中实现,对于虚拟球体场景中的海洋体数据可视化,长方体渲染结果不能精确定位在地球表面位置;由于地球曲率的影响,对于大范围海洋数据,该方法的绘制结果的误差也是非常大的。本文提出了一种GPU加速的球面体绘制方法,在坐标系转换过程中采用了球体坐标系,海洋数据在球壳体中绘制能够更好体现表达海洋数据的形态和变化。(3)提出了自适应噪声采样的三维矢量场体绘制方法。传统的线积分卷积(LIC)选择噪声纹理作为输入,通过线积分卷积矢量数据得到输出流线纹理的每个像素值,这种方法使用固定空间分辨率的噪声纹理,采样频率不随视点距离远近发生改变。本文提出一种根据视点距离,自适应设置采样分辨率,实时生成新的噪声纹理送入GPU中进行流线卷积生成,实现一种随视点距离远近变化,绘制流线也随之减增的多层次细节(LOD)的效果。关键词:数字海洋;可视化仿真;球面体绘制;3DLICVIStudyandDevelopmentofVirtual-Realityand3D-VisualizationOceanEngineAbstractOceanisacomplicateddynamictime-varyingsystemwithmanyfactorsandprocessesinteracting.Chinaisalargemaritimecountryandincreasinglydependentsontheoceanbecauseofthedevelopmentofsocietyandeconomy.DigitalOceanisanoceaninformationsystemconsistingofvast,multi-resolution,multi-timephase,multi-typedataanditscorrespondingalgorithm.Chinahasalreadyput“DigitalOcean”intothedevelopmentprogrammeofmarinescienceandtechnologyasalong-termstrategy.Astheproceedingofthisprogramme,thetaskofdigitalizedmanagement,analysisandexpressionofmarinedatahasbecomeincreasinglypressing.Inthispaper,avirtual-realityand3D-visualizationengineofocean,i4Ocean,isdesignedfortheapplicationsorientedto“DigitalOcean”.Thewordi4means4Is:“Immersion”,”Interactivity”,”Imagination”and”Intelligence”.i4Oceanprovidesamarinespace-timedatamodelformarinedatamanagement.Thismodelcanwellexpressmarinespace-timedataandsomecharacteristicpatterns.Theengineofthismodelemploystheprogrammableeffectfilestomanageandrealizethecomplicatedvisualizationeffectssuchasshadows.i4Oceancontains4mainmodules,whichcorrespond4differentfunctionsofmanagement.Theyareresourcemanagementmodule,scenemanagementmodule,renderingmanagementmoduleandinteractivitymanagementmodule.Theycanhelpusersanddeveloperstobuildareal-timeinteractive3Denvironmentofvirtualoceanandrealizethebasicfunctionsofmarinedatavisualization.Basedonthisengine,usersanddeveloperscanalsobuildanoceandigitalplatformefficientlyandextendtheirfunctionsforsomespecialuse.Inthelast,twoapplicationcasesarerealizedbasedonthisengine.Thefirstcaseisthesimulationofoilspillingintheocean.Inthiscase,thewholediffusinganddriftingprocessoftheoilparticlesundertheinfluencesofwindandflowfieldisemulatedandvisualized.TheotherVIIcaseisconstructingavisualizationsystemofhydrologicenvironment.Andinthiscase,thissystemrealizesthespherical3DvisualizationofscalarandvectordatalocatedatChineseEastSea.Themaincontributionsofthispaperare:1.Designandrealizationofavirtual-realityand3D-visualizationengineofocean,i4Ocean.Inthispaper,animprovedModel-View-Adapter-Effectframeisemployedtobuildtheunderlyingarchitectureoftheenginesothattheintegrationofinterface,interactivity,functionandeffectisrealized.Theconnectionsamongthese4partsarereduced,whichrealizestheweakcoupling.Thelayersofviewandoperationareisolated,sothecodesinviewlayercanbeeditedwithoutre-compilingcodesofmodelandadapter.Meanwhile,theengineprovidesexpandedportsofdata,interactivity,functionandeffectfordevelopers.i4Oceanpackagesandrealizesthevisualizationandemulationoftheocean.Baseonthisengine,usersanddeveloperscanalsobuilddigitaloceanplatformsofdifferenttypesefficiently.2.Asphere-basedvolumerenderingmethod,whichissuitablefortheexpressionofoceandata,isproposed.Thetraditionalray-castingmethodofvolumerenderingisrealizedinacube.However,fortopographicdataoflargespatialscale,cube-basedvolumerenderingcannotpreciselyrevealthegeographicpositionontheearthbecauseoftheinfluenceoftheearth’scurvature.Soitwillcausealoterrorwhendisplayinglarge-scaleoceanicdata.InGPU-acceleratingsphere-basedvolumerenderingmethod,spheroidalcoordinatesareemployedintheprocessofcoordinatetransformation.Volumerenderinginaspherecanbetterexpresspatternsandvariationsofmarinedata.3.Aself-adaptingnoise-samplingvolumerenderingmethodofvectordataisputforward.ThetraditionalLineIntegralConvolution(LIC)methodselectsthenoisetextureastheinput,anduseslineintegraltoconvolutetheoutputdata.Theneveryvalueofpixelofth