freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于x3d的虛擬校園漫游系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)(編輯修改稿)

2025-01-04 11:05 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 可擴(kuò)展標(biāo)記語(yǔ)言 (Extensible Markup Language,簡(jiǎn)稱 XML)是萬(wàn)維網(wǎng)聯(lián)盟 (W3C)創(chuàng) 建 的 一組 規(guī) 范 。與 HTML 一 樣, 它 也 源自 SGML(Standard Generalize Markup Language 通用標(biāo)記語(yǔ)言 )。但與 HTML 不同, XML 是一種元標(biāo)記語(yǔ)言,可以依據(jù)用戶的需求,自行定義標(biāo)簽及屬性名,從而突破了 HTML 固定標(biāo)記集合的約束,具有自描述性和可擴(kuò)展性的特點(diǎn) [16]。 2. 組件思想 組件思想來(lái)源于面向?qū)ο罄碚??;诿嫦驅(qū)?象的思想的特點(diǎn),以及傳統(tǒng) VRML 的不易擴(kuò)展性在最新的 X3D 規(guī)范中,使用了組件思想對(duì)X3D規(guī)范進(jìn)行實(shí)現(xiàn),以增強(qiáng)與其他編程語(yǔ)言的交互。依據(jù)開發(fā)人員的需求,通過(guò)調(diào)用模塊動(dòng)態(tài)的將有用的底層摸塊裝配成應(yīng)用處理。使用組件模型的好處有以下幾點(diǎn) [17]: ( 1)精巧的內(nèi)核。就實(shí)現(xiàn)而言, VRML97 是一個(gè)龐大而復(fù)雜的標(biāo)準(zhǔn)。通過(guò)將 VRML 精簡(jiǎn)為一個(gè)小的核心功能集合,減少了實(shí)現(xiàn)的復(fù)雜度,并且增強(qiáng)了軟件的可維護(hù)性。同時(shí),精巧的內(nèi)核可以方便用戶,因?yàn)椴⒉皇敲總€(gè)用戶都需要那些復(fù)雜的擴(kuò)展,如果不加分辨的將這些復(fù)雜的應(yīng)用集成上去, 無(wú)疑會(huì)增加用戶端的大小,所以只為用戶提供簡(jiǎn)單的內(nèi)核,擴(kuò)展依照用戶的需求自行加入。 ( 2)擴(kuò)展能力。借助擴(kuò)展集和特性集的概念,開發(fā)者可以在內(nèi)核上添加新的擴(kuò)展集,也可擴(kuò)展新的特性。這樣就可以依據(jù)不同的需基于 X3D 的虛擬校園漫游系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 23 求,定制不同的應(yīng)用。 ( 3)減少了對(duì)資源的占用。一個(gè)小型但可擴(kuò)展的瀏覽器為用戶節(jié)省不必要的資源開支將會(huì)大大地方便用戶的使用。 X3D 的組件模型如圖 4 所示。 圖 4 X3D 的組件模型 X3D 文件結(jié)構(gòu) X3D文件架構(gòu)包含文件結(jié)構(gòu)、文件頭、文件體及注釋等內(nèi)容。 X3D文件結(jié)構(gòu)又包含文件頭、主程序概貌,在主程序概貌中包括頭文檔、組件、說(shuō)明及場(chǎng)景等。在場(chǎng)景中利用基本幾何造型造型節(jié)點(diǎn)、復(fù)雜節(jié)點(diǎn)、組節(jié)點(diǎn)、紋理節(jié)點(diǎn)、效果節(jié)點(diǎn)、組件節(jié)點(diǎn)、人性化節(jié)點(diǎn)及動(dòng)態(tài)感知節(jié)點(diǎn)等創(chuàng)建虛擬現(xiàn)實(shí)三維立體場(chǎng)景。在編寫 X3D 文件、節(jié)點(diǎn)和域時(shí),特別要注意大小寫, X3D 語(yǔ)言對(duì)大小寫是敏感的 [18]。 X3D 文件結(jié)構(gòu) 圖如圖 5 所示。 基于 X3D 的虛擬校園漫游系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 24 圖 5 X3D 文件結(jié)構(gòu)圖 X3D文件語(yǔ)法結(jié)構(gòu)是由 X3D 文件頭、主程序概貌(頭文檔和場(chǎng)景)組成,其中,頭文檔又包含組件和元數(shù)據(jù);場(chǎng)景主體涵蓋 X3D 所有節(jié)點(diǎn)。 X3D 文件頭是序碼部分,是 X3D 文件必須書寫的部分。主程序概貌是 X3D 文件主程序框架的主題部分,是 X3D文件的精髓和靈魂。概貌中的頭文件作用是引入外部組件及文檔說(shuō)明,概貌中的場(chǎng)景主體描X3D 文件結(jié)構(gòu) X3D 頭文件 X3D 主程序概貌 Head(頭文檔): Scene(場(chǎng)景): ponent(組件) metadata(元數(shù)據(jù)) 節(jié)點(diǎn) 節(jié)點(diǎn) 基于 X3D 的虛擬校園漫游系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 25 述是對(duì) X3D文件三位立體場(chǎng)景中的自然景觀、人文環(huán)境、建筑造型、街道等創(chuàng)建和編碼過(guò)程。 X3D 場(chǎng)景 X3D 使用場(chǎng)景圖( Scene Graph)數(shù)據(jù)結(jié)構(gòu)來(lái)建立 3D 虛擬境界 , 虛擬境界由對(duì)象構(gòu)成,而對(duì)象及其屬性用節(jié)點(diǎn)描述,節(jié)點(diǎn)是 X3D 的基本單元。每個(gè)節(jié)點(diǎn)由類型、域、事件、實(shí)現(xiàn)、名字組成, X3D 文件包含包括零個(gè)或多個(gè)根節(jié)點(diǎn)。節(jié)點(diǎn)按一定規(guī)則構(gòu)成場(chǎng)景圖( Scene graph) [19]。 X3D 節(jié)點(diǎn)層次結(jié)構(gòu):場(chǎng)景( Scene)根節(jié)點(diǎn)、父節(jié)點(diǎn)、子節(jié)點(diǎn)。以場(chǎng)景作為三維立體場(chǎng)景的根節(jié)點(diǎn),以此增加節(jié)點(diǎn)和子節(jié)點(diǎn)以創(chuàng)建種復(fù)雜的三維立體場(chǎng)景。在每個(gè) X3D 文件中只允許有一個(gè)場(chǎng)景根節(jié)點(diǎn),在此基礎(chǔ)上在增加需要的節(jié)點(diǎn)造型。 在一個(gè)嵌套節(jié)點(diǎn)中,最 頂層節(jié)點(diǎn)就是根節(jié)點(diǎn),由它派生整個(gè)場(chǎng)景的全部節(jié)點(diǎn)。父節(jié)點(diǎn)是根節(jié)點(diǎn)派生出來(lái)的,再由父節(jié)點(diǎn)派生子節(jié)點(diǎn),循環(huán)下去直至全部場(chǎng)景。例如:在場(chǎng)景根節(jié)點(diǎn)下,創(chuàng)建一個(gè)模型節(jié)點(diǎn)( shape 節(jié)點(diǎn)),此節(jié)點(diǎn)成為父節(jié)點(diǎn)。父節(jié)點(diǎn)又包含兩個(gè)子節(jié)點(diǎn),分別為 Appearance 節(jié)點(diǎn)和 Geometry 節(jié)點(diǎn),在 Geometry 節(jié)點(diǎn)下又包含一個(gè)葉節(jié)點(diǎn)( Sphere 節(jié)點(diǎn)),完成三維立體空間整體造型。 X3D 場(chǎng)景節(jié)點(diǎn)層次結(jié)構(gòu)如圖 6 所示: 場(chǎng)景( Scene) 場(chǎng)景( Scene) 基于 X3D 的虛擬校園漫游系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 26 根節(jié)點(diǎn) 父節(jié)點(diǎn) Geometry 節(jié)點(diǎn) 子節(jié)點(diǎn) 圖 6 X3D 根節(jié)點(diǎn)層次結(jié)構(gòu)圖 根據(jù) X3D 語(yǔ)法結(jié)構(gòu)的要求,除根節(jié)點(diǎn)外,其他節(jié)點(diǎn)之間可以并列或?qū)訉忧短资褂谩2煌饔玫墓?jié)點(diǎn)有著不同語(yǔ)法結(jié)構(gòu),父節(jié)點(diǎn)包含一個(gè)或多個(gè)子節(jié)點(diǎn),子節(jié)點(diǎn)中又包含子節(jié)點(diǎn)等。 X3D 常用節(jié)點(diǎn) 在虛擬現(xiàn)實(shí)中,節(jié)點(diǎn)是 X3D 核心所在,可以說(shuō)如果沒(méi)有節(jié)點(diǎn),就沒(méi)有 X3D,所以 X3D 的節(jié)點(diǎn)起著重要作用。學(xué)好 X3D 的節(jié)點(diǎn),也就學(xué)好 X3D。以下是 X3D 中常用的節(jié)點(diǎn) [18]。 2D 節(jié)點(diǎn) X3D 支 持 點(diǎn) 的 節(jié) 點(diǎn) 是 PointSet,它可以包含 Color 和 Coordinate 節(jié)點(diǎn)。 Color 節(jié)點(diǎn)是用來(lái)構(gòu)造顏色值的索引表用于指定對(duì)應(yīng)點(diǎn)或?qū)ο蟮念伾?Coordinate 節(jié)點(diǎn)是用來(lái)構(gòu)造坐標(biāo)的列表。 繪制直線是采用 IndexedLineSet 節(jié)點(diǎn),它可以包含 Color 和 基于 X3D 的虛擬校園漫游系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 27 Coordinate 子節(jié)點(diǎn)。 IndexedLineSet 節(jié)點(diǎn)屬性中, coordIndex 屬性用來(lái)指定直線端點(diǎn)在 Coordinate 子節(jié)點(diǎn)的索引號(hào) (0 表示第一個(gè)點(diǎn) ),每條直線索引值 3 個(gè)數(shù)組成,前兩個(gè)是點(diǎn)的索引號(hào),第三個(gè)是1。 Rectangle2D 幾 何節(jié) 點(diǎn)用 來(lái) 指定 一 個(gè)平 面 矩形 。 Arc2D、ArcClose2D、 Circle2D 和 Disk2D 節(jié)點(diǎn)分別用來(lái)繪制圓弧、封閉圓弧、圓和環(huán)。 3D 節(jié)點(diǎn) X3D 提供了立方體 (Box)、圓柱 (Cylinder)、圓錐 (Cone)、球體(Sphere)等基本 3D 造型節(jié)點(diǎn)。 Box 節(jié)點(diǎn)的主要屬性是 size,用來(lái)確定長(zhǎng)度 (x 方向 )、高度 (y 方向 )和寬度 (z)方向的大小。 Cylinder 節(jié)點(diǎn)的主要屬性有 height(高度 )、 radius(半徑 )以及是否包含頂面 (top)、側(cè)面 (side)和底面 (bottom)等。 Cone 節(jié)點(diǎn)的主要屬性有 height(高度 )、 bottomRadius(底面半徑 )以及是否包含側(cè)面 (side)和底面 (bottom)等。 Sphere 節(jié)點(diǎn)的主要屬性是 radius,用來(lái)確定球體的半徑。 利用 X3D 的幾何 2D 和幾何 3D 節(jié)點(diǎn),可以創(chuàng)建出一些簡(jiǎn)單的幾何造型。一個(gè)虛擬現(xiàn)實(shí)空間的內(nèi)容是豐富多彩的,僅有一些簡(jiǎn)單造型不基于 X3D 的虛擬校園漫游系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 28 能滿足 X3D設(shè)計(jì)需要,因此需要?jiǎng)?chuàng)建出更加復(fù)雜多變的場(chǎng)景和造型以滿足設(shè)計(jì)需求。 X3D復(fù)雜幾何造型節(jié)點(diǎn)涵蓋 PointSet(點(diǎn))節(jié)點(diǎn)、 IndexedLineSet(線)節(jié)點(diǎn)、 IndexedFaceSet(面)節(jié)點(diǎn)、 ElevationGrid(海拔柵格)節(jié)點(diǎn)及 Extrusion(擠出造型)節(jié)點(diǎn)等復(fù)雜節(jié)點(diǎn)。 ElevationGrid 節(jié)點(diǎn)先將某一個(gè)地表區(qū)域分割成很多網(wǎng)格,定義網(wǎng)格的個(gè)數(shù),再定義網(wǎng)格的長(zhǎng)和寬,最后定義網(wǎng)格的高度,可創(chuàng)建該區(qū)域所需的海拔柵格幾何造型。該節(jié)點(diǎn)可以創(chuàng)建高山、丘陵、及不規(guī)則地表的空間造型。 Extrusion 節(jié)點(diǎn)可以創(chuàng)建出用戶需要的所有立體空間造型,是X3D 文件中最重要、最復(fù)雜、也是最有用的節(jié)點(diǎn)。 Extrusion 用以創(chuàng)建出造型,創(chuàng)建擠出造型過(guò)程類似于在工業(yè)生產(chǎn)中加工材料的流體通過(guò)一 個(gè)金屬板的模型孔,按照模型孔的設(shè)計(jì),擠壓成為一個(gè)新的造型,這個(gè)過(guò)程就是擠出。 Extrusion 節(jié)點(diǎn)主要由 crossSection 域和 spine域 的域值決定。 crossSection 域控制斷面形狀,是一系列的二維輪廓線,可以組成圓形、方形、多邊形等。 Spine 域定義一系列的三維路徑, crossSection 域定義好的斷面的幾何中心沿 spine 路徑創(chuàng)造。常見幾種斷面形狀如圖 7 所示。 x x x 基于 X3D 的虛擬校園漫游系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 29 z z z 圖 7 常見幾種斷面( xz)形狀 在 X3D 文件中的視點(diǎn)就是指在 立體空間中預(yù)先定義的觀察位置和空間朝向。在這個(gè)位置上通過(guò)這個(gè)朝向,瀏覽者可以觀察到虛擬世界中的場(chǎng)景。 Viewpoint 節(jié)點(diǎn)指明了一個(gè) X3D 場(chǎng)景空間中的觀察位置和視角方向。 NavigationInfo 節(jié)點(diǎn)用來(lái)指定場(chǎng)景的觀看方式和替身的物理特征。 在 X3D 場(chǎng)景空間中,每一個(gè)造型都有其空間坐標(biāo),通過(guò)修改空間坐標(biāo)系就可以使該造 型在場(chǎng)景空間中移動(dòng)、旋轉(zhuǎn)和縮放等。 X3D 提供 Transform 節(jié)點(diǎn)來(lái)進(jìn)行造型的大小變換,位置變化。 利用 X3D 組節(jié)點(diǎn)設(shè)計(jì)可以創(chuàng)建 X3D 立體 空間的復(fù)雜造型,可以將所有節(jié)點(diǎn)包含其中,看作一個(gè)整體對(duì)象造型。在組節(jié)點(diǎn)中節(jié)點(diǎn)可以是基本節(jié)點(diǎn)、子節(jié)點(diǎn)或者組節(jié)點(diǎn)本身。組節(jié)點(diǎn)的種類有很多,如 Group基于 X3D 的虛擬校園漫游系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 30 (編組)節(jié)點(diǎn)、 Inline(內(nèi)聯(lián))節(jié)點(diǎn)、 Billboard(廣告、警示牌)節(jié)點(diǎn)及 LOD(細(xì)節(jié)層次)節(jié)點(diǎn)等。 Group 節(jié)點(diǎn)用來(lái)編組各種幾何造型,并將其作為一個(gè)整體造型來(lái)看待。 Group節(jié)點(diǎn)是將多個(gè)節(jié)點(diǎn)進(jìn)行組合創(chuàng)建較復(fù)雜的立體空間造型。如果利用 DEF(重定義節(jié)點(diǎn)名)為 Group 節(jié)點(diǎn)命名,則可以使用 USE(重用節(jié)點(diǎn))在相同文件中重復(fù)使用這一節(jié)點(diǎn),從而增強(qiáng)程序設(shè)計(jì)的可重 用性和靈活性。 Inline 節(jié)點(diǎn)可以使 X3D 程序設(shè)計(jì)模塊化。由基本 X3D 程序模塊組成復(fù)雜和龐大的 X3D 立體空間靜態(tài)或動(dòng)態(tài)場(chǎng)景。 Inline 節(jié)點(diǎn)還可以從其他網(wǎng)站中引入 X3D 文件(程序),可以實(shí)現(xiàn)分工協(xié)作。在 X3D程序設(shè)計(jì)中,編寫 X3D程序時(shí),由于創(chuàng)建的節(jié)點(diǎn)造型復(fù)雜,使 X3D源程序過(guò)大或過(guò)長(zhǎng),給程序編寫和調(diào)試帶來(lái)諸多的不變,因此需要將一個(gè)很大的 X3D 源程序拆分成幾個(gè)小程序。這就是軟件工程的設(shè)計(jì)思想,采用結(jié)構(gòu)化、模塊化、層次化的程序設(shè)計(jì)方法,提高軟件設(shè)計(jì)質(zhì)量。設(shè)計(jì)出層次清晰,結(jié)構(gòu)結(jié)構(gòu)合理的軟件項(xiàng)目。 Billboard 節(jié)點(diǎn)可以在世界坐標(biāo)系下創(chuàng)建一個(gè)局部坐標(biāo)系,選定一個(gè)旋轉(zhuǎn)軸后,這個(gè)節(jié)點(diǎn)下的子節(jié)點(diǎn)所構(gòu)成的虛擬對(duì)象的正面會(huì)永遠(yuǎn)自動(dòng)地面對(duì)觀眾,而不管觀察者如何行走或旋轉(zhuǎn)。在 X3D 場(chǎng)景中,可以用來(lái)給單位、公司做廣告宣傳,路標(biāo)指示、張貼海報(bào)等。 X3D紋理繪制節(jié)點(diǎn)將紋理圖按一定規(guī)則粘貼到 X3D文件立體空間基于 X3D 的虛擬校園漫游系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 31 造型表面的過(guò)程稱為紋理映射。紋理是一種位圖,即二維圖像。使用紋理映射能使立體空間造型更具有真實(shí)感,紋理圖的使用能增強(qiáng)視覺(jué)效果,提高渲染質(zhì)量。在 X3D 文件中,瀏覽器支持 JPEG、 GIF、 PNG及 MPEG 等格式 的紋理圖像。 X3D 文件提供了多種紋理節(jié)點(diǎn),如ImageTexture(圖像紋理)節(jié)點(diǎn)、 Image3DTexture(三維圖像紋理)節(jié)點(diǎn)、 PixelTexture(像素紋理)節(jié)點(diǎn)和 MovieTexture(電影紋理)節(jié)點(diǎn)。 ( 1)時(shí)間觸發(fā)器 TimeSensor 觸發(fā)器或者叫做傳感器,是用來(lái)產(chǎn)生不同類型的事件。時(shí)間觸發(fā)器 TimeSensor 是根據(jù)時(shí)間來(lái)不斷產(chǎn)生事件,它有許多屬性,通常把用于輸入的屬性稱為域,或稱為輸入事件,而把輸出的屬性稱為產(chǎn)生的事件,或稱為輸出事件。 ( 2)插值器 計(jì)算機(jī)動(dòng)畫按生成的方法可以分為逐幀動(dòng)畫、關(guān)鍵幀動(dòng)畫和造型動(dòng)畫等幾大類。在關(guān)鍵幀動(dòng)畫設(shè)計(jì)中,通常需要我們指定關(guān)鍵幀,而中間幀往往由計(jì)算機(jī)自動(dòng)生成。 X3D 中的插值器就起到設(shè)定關(guān)鍵幀并自動(dòng)生成中間幀的作用。它主要有顏色插值器節(jié)點(diǎn)(ColorInterpolator) 、 坐 標(biāo) 插 值 器 節(jié) 點(diǎn)(CoordinateInterpolator) 、 法 向 量 插 值 器 節(jié) 點(diǎn)(NormalInterpolator) 、 方 向 插 值 器 節(jié) 點(diǎn)基于 X3D 的虛擬校園漫游系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 32 (OrientationInterpolator) 、 位 置 插 值 器 節(jié) 點(diǎn)(PositionInterpolator) 和比例插值器節(jié)點(diǎn)(ScalarInterpolator)。除此之處, X3D 還提供比較專業(yè)的插值器,如 NURBS 曲線系列插值器等。
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1