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

正文內(nèi)容

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

2025-07-23 20:07 本頁面
 

【文章內(nèi)容簡介】 X3D場景X3D 使用場景圖(Scene Graph)數(shù)據(jù)結(jié)構(gòu)來建立 3D 虛擬境界, 虛擬境界由對象構(gòu)成,而對象及其屬性用節(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)成場景圖(Scene graph)[19]。X3D節(jié)點(diǎn)層次結(jié)構(gòu):場景(Scene)根節(jié)點(diǎn)、父節(jié)點(diǎn)、子節(jié)點(diǎn)。以場景作為三維立體場景的根節(jié)點(diǎn),以此增加節(jié)點(diǎn)和子節(jié)點(diǎn)以創(chuàng)建種復(fù)雜的三維立體場景。在每個(gè)X3D文件中只允許有一個(gè)場景根節(jié)點(diǎn),在此基礎(chǔ)上在增加需要的節(jié)點(diǎn)造型。在一個(gè)嵌套節(jié)點(diǎn)中,最頂層節(jié)點(diǎn)就是根節(jié)點(diǎn),由它派生整個(gè)場景的全部節(jié)點(diǎn)。父節(jié)點(diǎn)是根節(jié)點(diǎn)派生出來的,再由父節(jié)點(diǎn)派生子節(jié)點(diǎn),循環(huán)下去直至全部場景。例如:在場景根節(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場景節(jié)點(diǎn)層次結(jié)構(gòu)如圖6所示:場景(Scene)場景(Scene)Sphere節(jié)點(diǎn)Appearance節(jié)點(diǎn) 根節(jié)點(diǎn) 父節(jié)點(diǎn) Geometry節(jié)點(diǎn) 子節(jié)點(diǎn) 圖6 X3D根節(jié)點(diǎn)層次結(jié)構(gòu)圖根據(jù)X3D語法結(jié)構(gòu)的要求,除根節(jié)點(diǎn)外,其他節(jié)點(diǎn)之間可以并列或?qū)訉忧短资褂谩2煌饔玫墓?jié)點(diǎn)有著不同語法結(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 核心所在,可以說如果沒有節(jié)點(diǎn),就沒有 X3D,所以 X3D 的節(jié)點(diǎn)起著重要作用。學(xué)好 X3D 的節(jié)點(diǎn),也就學(xué)好 X3D。以下是 X3D中常用的節(jié)點(diǎn)[18]。X3D 支持點(diǎn)的節(jié)點(diǎn)是 PointSet,它可以包含 Color 和 Coordinate 節(jié)點(diǎn)。Color 節(jié)點(diǎn)是用來構(gòu)造顏色值的索引表用于指定對應(yīng)點(diǎn)或?qū)ο蟮念伾?,Coordinate 節(jié)點(diǎn)是用來構(gòu)造坐標(biāo)的列表。繪制直線是采用 IndexedLineSet 節(jié)點(diǎn),它可以包含 Color 和 Coordinate 子節(jié)點(diǎn)。IndexedLineSet 節(jié)點(diǎn)屬性中,coordIndex 屬性用來指定直線端點(diǎn)在Coordinate子節(jié)點(diǎn)的索引號(0表示第一個(gè)點(diǎn)),每條直線索引值3個(gè)數(shù)組成,前兩個(gè)是點(diǎn)的索引號,第三個(gè)是1。Rectangle2D 幾何節(jié)點(diǎn)用來指定一個(gè)平面矩形。Arc2D、ArcClose2D、Circle2D 和 Disk2D節(jié)點(diǎn)分別用來繪制圓弧、封閉圓弧、圓和環(huán)。X3D 提供了立方體(Box)、圓柱(Cylinder)、圓錐(Cone)、球體(Sphere)等基本 3D 造型節(jié)點(diǎn)。Box 節(jié)點(diǎn)的主要屬性是 size,用來確定長度(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,用來確定球體的半徑。利用X3D的幾何2D和幾何3D節(jié)點(diǎn),可以創(chuàng)建出一些簡單的幾何造型。一個(gè)虛擬現(xiàn)實(shí)空間的內(nèi)容是豐富多彩的,僅有一些簡單造型不能滿足X3D設(shè)計(jì)需要,因此需要?jiǎng)?chuàng)建出更加復(fù)雜多變的場景和造型以滿足設(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)格的長和寬,最后定義網(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)建擠出造型過程類似于在工業(yè)生產(chǎn)中加工材料的流體通過一個(gè)金屬板的模型孔,按照模型孔的設(shè)計(jì),擠壓成為一個(gè)新的造型,這個(gè)過程就是擠出。Extrusion節(jié)點(diǎn)主要由crossSection域和spine域 的域值決定。crossSection域控制斷面形狀,是一系列的二維輪廓線,可以組成圓形、方形、多邊形等。Spine域定義一系列的三維路徑,crossSection域定義好的斷面的幾何中心沿spine路徑創(chuàng)造。常見幾種斷面形狀如圖7所示。 x x x z z z圖7 常見幾種斷面(xz)形狀在X3D文件中的視點(diǎn)就是指在立體空間中預(yù)先定義的觀察位置和空間朝向。在這個(gè)位置上通過這個(gè)朝向,瀏覽者可以觀察到虛擬世界中的場景。Viewpoint 節(jié)點(diǎn)指明了一個(gè) X3D 場景空間中的觀察位置和視角方向。NavigationInfo 節(jié)點(diǎn)用來指定場景的觀看方式和替身的物理特征。在 X3D 場景空間中,每一個(gè)造型都有其空間坐標(biāo),通過修改空間坐標(biāo)系就可以使該造型在場景空間中移動(dòng)、旋轉(zhuǎn)和縮放等。X3D 提供 Transform 節(jié)點(diǎn)來進(jìn)行造型的大小變換,位置變化。利用X3D組節(jié)點(diǎn)設(shè)計(jì)可以創(chuàng)建X3D立體空間的復(fù)雜造型,可以將所有節(jié)點(diǎn)包含其中,看作一個(gè)整體對象造型。在組節(jié)點(diǎn)中節(jié)點(diǎn)可以是基本節(jié)點(diǎn)、子節(jié)點(diǎn)或者組節(jié)點(diǎn)本身。組節(jié)點(diǎn)的種類有很多,如Group(編組)節(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)用來編組各種幾何造型,并將其作為一個(gè)整體造型來看待。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)場景。Inline節(jié)點(diǎn)還可以從其他網(wǎng)站中引入X3D文件(程序),可以實(shí)現(xiàn)分工協(xié)作。在X3D程序設(shè)計(jì)中,編寫X3D程序時(shí),由于創(chuàng)建的節(jié)點(diǎn)造型復(fù)雜,使X3D源程序過大或過長,給程序編寫和調(diào)試帶來諸多的不變,因此需要將一個(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)成的虛擬對象的正面會永遠(yuǎn)自動(dòng)地面對觀眾,而不管觀察者如何行走或旋轉(zhuǎn)。在X3D場景中,可以用來給單位、公司做廣告宣傳,路標(biāo)指示、張貼海報(bào)等。X3D紋理繪制節(jié)點(diǎn)將紋理圖按一定規(guī)則粘貼到X3D文件立體空間造型表面的過程稱為紋理映射。紋理是一種位圖,即二維圖像。使用紋理映射能使立體空間造型更具有真實(shí)感,紋理圖的使用能增強(qiáng)視覺效果,提高渲染質(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ā)器或者叫做傳感器,是用來產(chǎn)生不同類型的事件。時(shí)間觸發(fā)器 TimeSensor 是根據(jù)時(shí)間來不斷產(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)(OrientationInterpolator) 、位置插值器節(jié)點(diǎn)(PositionInterpolator) 和比例插值器節(jié)點(diǎn)(ScalarInterpolator)。除此之處,X3D 還提供比較專業(yè)的插值器,如 NURBS 曲線系列插值器等。(3)事件事件(Events)是在 X3D 運(yùn)行時(shí)環(huán)境中產(chǎn)生行為的主要方法,這種方法用來改變域的輸入值或接受域的輸出值,分別又稱為發(fā)送到輸入域的事件和輸出域發(fā)送的事件。(4) 路由路由(Route)聲明允許我們在把一個(gè)節(jié)點(diǎn)的輸出事件連接到另一個(gè)節(jié)點(diǎn)的輸入事件上,這樣可以執(zhí)行復(fù)雜的行為,而不需要使用程序命令。在路由中,一個(gè)輸出事件發(fā)生,相應(yīng)目的的輸入事件就會接受到通知,同時(shí)可以對輸入事件變動(dòng)做出相應(yīng)的處理。這個(gè)處理可以改變節(jié)點(diǎn)的狀態(tài),產(chǎn)生額外的事件,或者改變場景圖的結(jié)構(gòu)。Route(路由)不是節(jié)點(diǎn),它是一個(gè)語句。ROUTE 語句是建立指定節(jié)點(diǎn)的域之間通道的語法構(gòu)件。ROUTE 語句可以出現(xiàn)在 X3D 文件的最上層,或者也可以出現(xiàn)在節(jié)點(diǎn)中任何可以使用域的地方。ROUTE語句應(yīng)該放置在路由的源節(jié)點(diǎn)和目的節(jié)點(diǎn)定義之后,而不能放置在源節(jié)點(diǎn)中或目的節(jié)點(diǎn)中。X3D 的交互實(shí)現(xiàn)也是通過類似的映射機(jī)制。用戶事件的產(chǎn)生是通過相應(yīng)的傳感器產(chǎn)生的,而 ROUTE 語句就是相當(dāng)于事件的映射,它映射到另一個(gè)輸入事件中。X3D 中,用戶事件的傳感器有:KeySensor(鍵盤傳感器) 、StringSensor(字符串傳感器)、TouchSensor(觸摸傳感器)、PlaneSensor(平移傳感器) 、SphereSensor(繞點(diǎn)旋轉(zhuǎn)感器)和CylinderSensor(Y 軸旋轉(zhuǎn)傳感器)等。在X3D中,通過使用程序化的節(jié)點(diǎn)Script 來嵌入腳本程序。它支持ECMAScript/JavaScript或Java 語言。ECMAScript也是一種腳本語言,由 Netscape 和Microsoft 使用開發(fā),它是一種面向?qū)ο笳Z言,ECMAScript 和 DOM 一起十分接近于現(xiàn)在對 JavaScript 和 JScript 的實(shí)現(xiàn),雖然說是用于網(wǎng)絡(luò)環(huán)境,但它可以用于任何腳本環(huán)境中,并且其語法與 JavaScript 基本相同。第3章 虛擬校園漫游系統(tǒng)總體設(shè)計(jì) 系統(tǒng)的需求分析與設(shè)計(jì)目標(biāo) 需求分析虛擬校園漫游系統(tǒng)包括一個(gè)逼真的視、聽、觸覺一體化的特定范圍的虛擬環(huán)境,它是一個(gè)真實(shí)空間或假想空間的實(shí)時(shí)仿真虛擬空間,用戶借助必要的裝備以自然的方式在該虛擬空間中漫游,從任意角度對環(huán)境中的虛擬對象進(jìn)行觀察,從而產(chǎn)生身臨其境的感覺,漫游其中。本系統(tǒng)旨在開發(fā)深圳大學(xué)的校園虛擬漫游系統(tǒng),主要從三維場景建模、建立漫游系統(tǒng)、實(shí)現(xiàn)交互功能等方面來考慮。首先按校園環(huán)境選取幾個(gè)典型場景建立模型,然后建立漫游系統(tǒng),即完成對三維場景漫游控制的設(shè)計(jì)。最后為系統(tǒng)增加各種交互功能,進(jìn)一步提高虛擬系統(tǒng)的真實(shí)感覺。具體實(shí)現(xiàn)過程如下:,確定漫游系統(tǒng)的規(guī)模、顯示效果以及開發(fā)平臺等。,然后進(jìn)行紋理貼圖,并對數(shù)據(jù)進(jìn)行預(yù)處理矯正,盡量實(shí)現(xiàn)真實(shí)感效果。,開發(fā)交互功能,實(shí)現(xiàn)對虛擬校園的交互漫游。 設(shè)計(jì)目標(biāo)虛擬校園漫游系統(tǒng)應(yīng)該表現(xiàn)出虛擬環(huán)境中的地形、花草樹木、校內(nèi)建筑等對象的三維模型,在形態(tài)、光照、質(zhì)感等方面都十分逼真,使參考者能在構(gòu)筑的栩栩如生的虛擬校園中漫游,系統(tǒng)應(yīng)實(shí)現(xiàn)如下目標(biāo)[18]:,能使不同層次的用戶都可以對系統(tǒng)進(jìn)行操作。,能充分體現(xiàn)出現(xiàn)實(shí)中的校園自然景觀。,系統(tǒng)應(yīng)該能夠表達(dá)物體表面的紋理細(xì)節(jié),即要進(jìn)行詳細(xì)的紋理影射。,虛擬物體應(yīng)具有逼真的材質(zhì)、明暗效應(yīng)。,使用戶可以從任意角度和方向?qū)π@的景觀進(jìn)行瀏覽。,系統(tǒng)應(yīng)具備刪除、添加建筑物的功能。8.系統(tǒng)應(yīng)具有較好的可移植性和可擴(kuò)展性。 系統(tǒng)設(shè)計(jì)流程開始收集數(shù)據(jù)及圖片等信息整理信息,做出草圖構(gòu)建場景與模型虛擬校園場景整體拼合完成虛擬校園漫游系統(tǒng)的建立結(jié)束虛擬校園漫游系統(tǒng)的設(shè)計(jì)應(yīng)力求真實(shí),所以對校園的實(shí)地考察是很有必要的。通過實(shí)地考察,分析校園建筑的構(gòu)造,收集校園建筑的圖片信息,確定建筑比例,做出草圖方便模型的構(gòu)建。處理收集到的信息,做出整體規(guī)劃,構(gòu)建三維立體模型,整合各個(gè)場景與模型,最終形成完整的虛擬校園漫游系統(tǒng)。具體的實(shí)現(xiàn)流程圖如圖8所示。 圖8 總體設(shè)計(jì)的流程圖 系統(tǒng)的總體結(jié)構(gòu)及規(guī)劃將前期收集的數(shù)據(jù)整理之后,對整個(gè)場景里的數(shù)據(jù)模型按照一定的邏輯規(guī)則進(jìn)行組織,采用層次結(jié)構(gòu)的形式進(jìn)行數(shù)據(jù)模型的組織,有利于模型的構(gòu)建、場景的合并以及場景優(yōu)化等維護(hù)和管理。總體規(guī)劃效果圖如圖9所示。圖9 虛擬校園總體規(guī)劃效果圖層次結(jié)構(gòu)就是按照物體的類別進(jìn)行劃分,同一類物體作為
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1