試析基於X3D的虛擬植物建模和可視化探究

學識都 人氣:2.8W

本文在闡述 X3D虛擬現實技術的基礎上,介紹並分析了基於X3D虛擬植物建模的關鍵技術和優勢,進一步探索了基於 X3D虛擬現實技術植物建模的原理和方法,最後,針對國內外應用目前狀況,提出了應用中出現的新問題,併爲未來的研 究方向進行了展望。

試析基於X3D的虛擬植物建模和可視化探究

1 X3D虛擬現實技術概述

虛擬現 實 (Virtual Reality)是20世 界 80年代初由VPL Research公司創始人 Jaron Lanier提出的。已廣泛應 用於科 學研 究和可 視化 、軍事 模擬 、工程 應用、醫學、商業、教育及娛樂等領域。X3D虛擬現實技術 是 目前虛 擬現實技 術 中最前 沿 的科技,2004年10月正式通過 ISO/IEC審議成爲網絡三維國際通用標準 ISO/IEC19775。X3D虛擬現實技術整合了 XML、JavaSeript、Java、Java3D和流技術等世界先進技術.具有更強大、更高效的三維計算 能力、渲染質量 和傳輸速度。它克服 了以往其它虛擬 現實語言存在兼容性及可擴展性差、對瀏覽器的依靠過強、編程能力弱等缺點,將其應用於農業信息領域,顯示其巨大的發展潛力,前景十分廣闊。

1.1 X3D虛擬現實技術的關鍵技術

(1)XML編碼

X3D採用 XML編碼 ,使其具 有通用性 、易於 頁面集成 、和下一代 Web融合等諸多優勢.並引入了基於組件的結構.具有兼容性 、可擴展性 、輕量化 的內核等特徵。XML編碼爲創建和 XML兼容的 VRML代碼 ,提供了一組 XML通 用 實體 和元 素 類 型聲 明 。VRML2OOX規範草案包含一個完整的 DTD,它定義了X3D的 XML標記 和這些標記 功能實現之 間的聯繫。而 DOM爲程序和腳本動態的訪問和更新 XML文檔的內容 、結構樣式提供 了和平臺 、語言無關的接口。

(2)構件思想

X3D體系結構的設計是以構件技術爲指導的,這裏構件是指功能相關 的一個或多個節點類型的一個集合 ,一個構件擴展 內核在某一 特定領域的功能 。X3D首 先將 VRML的關鍵特性封裝爲一個 小型可擴展的 內核 。然後通過特性 集擴 展內核 ,實現複雜 的或是應用程序定義的功能。構件思想帶來的好處主要有摘要:精巧的內核 、擴展能力 、減少 了對資源 的`佔用。

1.2 X3D虛擬現實技術的優勢

X3D被定義爲可交互操作、可擴 展 、跨平臺的網絡三維內容標準。X3D中添加了新的功能組件 ,推出Java、XML通用平臺下的開放原代碼工具包,在 X3D中需要使用非凡 的功能時 ,可以調用由 Java等編寫的程序 ,由於Java平 臺無關性 ,這樣可在不同的硬件和軟件平臺上實現瀏覽 ,拓寬了信息共享 範圍。在組件優化的結構下 ,X3D擴展新的功能將更快捷。X3D的內容是模塊化的和可重 復使用 的 ,根據可擴展 和模塊化的結構 ,瀏覽器可以只需支持需要 的概貌 。X3D支持也提供了一種MPEG一4支持的方式。 X3D 是MPEG一43D渲染的基礎。

2 基於X3D的植物建模和可視化

基於 X3D的虛擬植物建模和可視化 。是一種基 於x3d虛 擬現實技術 ,植物形態結構幾何描述的三維植物結構 模擬方 法 。該 方法 利用 儀器採 集植 物空 問數據,在計算機上三維建模語言編程調用空間數據來實現植物 三維模擬和再現 ,模擬植物在 三維空問中的生長髮育過程 。虛擬植物能夠精 確地反 映現實植物 的形態結構 ,以可視化的方式反映植物 的形態結構規律。

2.1 虛擬植物建模和可視化開發的基本原理

要建立虛擬植物,首先要建立基本 的三維植物結構模型。一個完整的虛擬植物實體對象一般包含葉 、莖 、花 、根等幾個主要結構部分 以及一些相關 的輔助設施 ,這些基本模型的製作採用現有較成熟的三維設計軟件 X3D—Edit。虛擬植物除 了能實現植物的三維可視 化外 ,其 另一個重要的功 能就是 通過 script編程 、API編程或其它技術能實現虛擬植物專題信息的展示和反饋。甚至實現一定 的分析功能 .協助農業相關部門進行植物信息收集和反饋。這對植物的探究是極爲有利的,爲他們提供了極大的方便。因而可以將虛擬植物定義爲以下形式 摘要:

虛擬植物=三維植物模型+專題信息展示功能+信息反饋功能+分析功能。實現步驟 如圖 2。

2.2 基於X3D植物形態結構模型的建立和可視化

2.2.1 三維結構建模方法 利用 X3D創建虛擬植物,生成三維模型的方法大致如下 摘要:

(1)利用 X3D節點直接編寫程序 。對於植物都具有根 、莖 、葉三個主要部 分 ,葉子這種 複雜 的造型可以採用擠壓節點一Extrusion來實現。具體語句結構可參考有關文獻。但僅僅根據 X3D語法構造準確的三維空間模型是很困難的,對於複雜模型的構造和修改就 比較不方便。

(2)除了使用節點直接編程之外,還要考慮使用其它輔助建模軟件創建模型。由於一些結構和外形的複雜性,直接用 X3D建模比較困難,可以利用第 三方的造型軟件來建模.然後通過相應的接口導出X3D文件,最後編輯 X3D 源程序 的相關部分來實現。通常的做法是,利用 AutoCAD建立複雜模型後,假如希望有更好的效果,可以輸入到 3DMAX 中賦予材質、色彩建立光照效果、合成,最後轉成 X3D文件 ,插入到虛擬環境 中。

2.2.2 交互編程方式在建模過程中.X3D 中常用的編程方式主要有以下二種 摘要:

(1)用 X3D中的script節點編程。script節點可以幫助 X3D完成複雜的交互過程.它有以下4個功能摘要:可感應環境的變化及用戶的操作摘要:從其它節點接收事件並進行一些處理;內部 的程序塊可完成一些計算工作;通過發送事件使外界產生相應的變化。Scrip節點可以像其它的X3D節點一樣放置在場景中的任何地方,可以重命名,可以從它那裏移走事件,也可以把事件傳給它。這是最常用的編程方法,目前用的較多的描述性語言是 Javascript和 VRMI_script。目前大多X3D瀏覽器都支持Javascript編程.而支持VRMLSeript編程的瀏覽器主要是 BS Contact Player。

(2)通過 X3D的外部編程接口API進行編程。這種編程方式答應虛擬場景和其它對象溝通,因而可以實現虛擬場景和其它對象的結合,達到令人滿足的效果。

3 國內外 X3D在項目中的應用目前狀況、存在的新問題

3.1 應用目前狀況

X3D技術在國內外已用很多應用成果.如美國海軍探究生院 fNPS1進行曲——基於Web的場景創作及可視化探究 和開發 的項 目 SAVAGE Project.就是基於X3D技 術進行研發的,並取得了階段性的成果.