瀏覽器方的功能擴展技術(shù).ppt_第1頁
瀏覽器方的功能擴展技術(shù).ppt_第2頁
瀏覽器方的功能擴展技術(shù).ppt_第3頁
瀏覽器方的功能擴展技術(shù).ppt_第4頁
瀏覽器方的功能擴展技術(shù).ppt_第5頁
已閱讀5頁,還剩60頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

瀏覽器方的功能擴展技術(shù),“瀏覽器服務(wù)器”所形成的基本client/server工作方式有三個特點: 簡單易行: 這使得它很快被實現(xiàn)和接受 有局限 服務(wù)器方: 功能單一 瀏覽器方: 能顯示的數(shù)據(jù)類型有限 有潛力. 在實踐中擴充, 現(xiàn)代軟件技術(shù) (對象和構(gòu)件技術(shù)) 的結(jié)果,服務(wù)器方擴充,CGI servlet LiveWire Active Server Page (ASP) Enterprise Java Bean (EJB) WAI,瀏覽器方擴充,Netscape的plug-in技術(shù), 目前也為IE支持. Microsoft的ActiveX Document技術(shù)(ActiveX技術(shù)的一部分). MIME數(shù)據(jù)類型是它們的共同工作基礎(chǔ)之一.,瀏覽器和服務(wù)器方的共同擴充,讓程序從服務(wù)器遷移到瀏覽器執(zhí)行 applet, ActiveX control, JavaScript, VBScript 通信和互操作機制的加強: 分布式對象/構(gòu)件技術(shù) CORBA, DCOM,瀏覽器,服務(wù)器,Applet ActiveX Control,JavaScript VBScript,HTML Docs,CGI Script servlet LiveWire,Plugin ActiveX Doc,Netscape的plug-in技術(shù),什么是plug-in ? 一個能和Navigator配合工作的軟件模塊, 幫助它“顯示”新的“數(shù)據(jù)類型”, 或者以一種新的方式顯示某些“老數(shù)據(jù)類型”. 為什么需要plug-in ? “數(shù)據(jù)類型”的種類是無限的, 瀏覽器能顯示的類型總是有限的.,WEB 服務(wù)器,netscape 瀏覽器,plug-in,plug-in 數(shù)據(jù),plug-in 數(shù)據(jù),無限多的數(shù)據(jù)類型,text/plain, text/html, image/gif, image/jpg, audio/au, audio/ra, video/avi, message/, extensions/, application/msdoc, . 數(shù)據(jù)類型: 信息的一種編碼形式. 信息的基本種類是有限的(例如文字,圖像,聲音, 視頻等), 但人們出于不同的應(yīng)用目的, 總會不斷創(chuàng)造新的編碼形式. 例如Word和PageMaker的文件所采用的編碼是不同的, 盡管它們都是針對相同的基本信息種類. 因此它們對應(yīng)不同的數(shù)據(jù)類型.,數(shù)據(jù)類型和信息的顯示,一種廣義的映射關(guān)系, 非常大的一個概念 “信息的顯示” - 不一定是為了給人看 同一種數(shù)據(jù)類型可以有不同的顯示 數(shù)據(jù)類型還可以是“嵌套”的. 瀏覽器就是實現(xiàn)這種映射的一個程序 它要知道所收到數(shù)據(jù)的類型, 以及該數(shù)據(jù)類型設(shè)計者的“顯示”意圖.,Plug-in 示例,Plug-in 示例,Plug-in 示例,從三個不同的角度看plug-in,用戶(網(wǎng)頁編寫者) 的角度: 如何準(zhǔn)備plug-in數(shù)據(jù), 可以期望什么效果 ? 安裝者的角度: 如何將一個plug-in模塊加到Navigator中 ? 開發(fā)者的角度: 如何實現(xiàn)一個plug-in ? 遵照Netscape定義的API和編碼規(guī)則.,在網(wǎng)頁中使用一種plug-in (數(shù)據(jù)類型),保證潛在的瀏覽器安裝了該plug-in. 如果不清楚, 你可以提供一張“bridge page”來提供該plug-in, 使瀏覽器能首先安裝它. 通過MIME機構(gòu), 配置你的WEB服務(wù)器,使其能識別這種plug-in數(shù)據(jù). 用 . 標(biāo)記將該數(shù)據(jù)類型引入你的網(wǎng)頁中.,EMBED標(biāo)記的一些主要典型屬性,height, width: plug-in在瀏覽器窗口中的大小 (缺省單位為象素數(shù)) src: 一個指向plug-in數(shù)據(jù)的URL type: 本 plug-in 的MIME類型 hidden: true,false 指示本plug-in是否可見 units: pixel,en, en為當(dāng)前字體點大小的1/2. pluginspage: 一個指向描述該plug-in的URL. text: 可能的文字內(nèi)容 src和type之一必須出現(xiàn); plugin開發(fā)者可定義其它屬性.,一個例子,Plain text isnt very exciting, but ,one.txf: 001 255 000 000 000 000 000 two.txf: 002 128 128 128 000 000 000 three.txf: 003 000 000 255 000 000 000 style red green blue xpos ypos factor,注:,在本例中, SRC所對應(yīng)數(shù)據(jù)文件的擴展名對應(yīng)plugin的數(shù)據(jù)類型. 根據(jù)這個數(shù)據(jù)類型, 瀏覽器決定啟用哪一個plugin模塊. EMBED標(biāo)記的屬性和plugin數(shù)據(jù)的解釋關(guān)系由plugin設(shè)計者決定 在HTML 4.0中, 標(biāo)記作為一種通用描述, 取代了EMBED, APPLET等標(biāo)記,How applet is included in HTML 4 document, Java applet that draws animated bubbles. ,Plug-in的安裝,最常見的錯誤是將它的可執(zhí)行碼放到了不正確的目錄中 Windows: “plugins” 文件夾(folder) Mac: “Plug-ins” 文件夾 UNIX: /usr/local/lib/netscape/plugins 或$HOME/.netscape/plugins, 或由環(huán)境變量NPX_PLUGIN_PATH指出的目錄 安全問題:plugin一旦安裝, 就和瀏覽器有同樣權(quán)限.,Plug-in工作的生命周期,用戶訪問一張含有plugin數(shù)據(jù)的網(wǎng)頁; 瀏覽器加載該plugin模塊, 并生成一個新的運行實例; 瀏覽器為該實例提供一個顯示區(qū)域 (在瀏覽器窗口中); 瀏覽器將plugin數(shù)據(jù)傳給該實例, 并啟動它執(zhí)行. Plugin按照它自己的方式顯示數(shù)據(jù) 當(dāng)用戶離開當(dāng)前網(wǎng)頁時, 該實例被銷毀. 如果沒有其它實例, 該plugin模塊被卸載.,Plug-in的對象模型,基于編碼技術(shù)和規(guī)則, 而不是通過語言支持. 僅考慮實例創(chuàng)建和函數(shù)調(diào)用等基本機制. 面向?qū)ο蟪绦蛟O(shè)計不一定需要面向?qū)ο蟪绦蛟O(shè)計語言 ? class String typedef struct public: const char *string; const char *color; string(const char *s) String; string=s; color = NULL; String *NewString(const char *s) void setColor(const char* c) String *obj=(String *) color=c; malloc(sizeof(String); private: obj-string = s; obj-color=NULL; const char *string; return obj; const char *color; void setColor(String *obj,const char *c) obj-color = c; ,用于開發(fā)Plug-in的API,16個 NPP_ 函數(shù), 由plug-in實現(xiàn), Navigator調(diào)用; 16個 NPN_ 函數(shù), 由Navigator實現(xiàn), plug-in調(diào)用. 例如 NPError NPP_SetWindow(NPP instance, NPWindow *window) PluginInstance *This=(PluginInstance *) instance-pdata; This-window = window; NPN_SetStatus(instance, “Creating user interface”); ,瀏覽器調(diào)用plugin中實現(xiàn)的函數(shù), 傳給它一個plugin數(shù)據(jù)和一個window (對應(yīng)瀏覽器窗口中的一個區(qū)域) plugin實例將數(shù)據(jù)建立在自己的空間中 plugin反過來調(diào)用瀏覽器中實現(xiàn)的函數(shù), 顯示狀態(tài)信息.,NPError NPP_New(NPMIMEType pluginType, NPP instance, uint16 mode; int16 argc, char *argn, char *argv, NPSavedData *saved) int i; instance-pdata=NPN_MemAlloc(sizeof(PluginInstance); PluginInstance *This=(PluginInstance*)instance-pdata; This-window=NULL; This-instance=instance; This-mode=mode; This-iteration=0; This-label=NULL; for (i=0;iiterations=atoi(argvi); if (!stricmp(argni,”label”) This-label=NPN_MemAlloc(strlen(argvi); strcpy(This-label, argvi); return NPERR_NO_ERROR; ,Plug-in API中的數(shù)據(jù)交換部分,NPP_NewStream() NPP_Write() ; plug-in由此得到數(shù)據(jù) NPP_DestroyStream() NPN_NewStream() NPN_Write(); plug-in送數(shù)據(jù)給瀏覽器 NPN_DestroyStream() NPN_GetURL(); plug-in可以直接和一個遠(yuǎn)程服務(wù)器建立連接, 不一定是HTTP. NPN_PostURL(),有關(guān)plug-in的其它問題,擴散與流行 免費, 或初始版本免費 plug-in軟件免費, 但創(chuàng)建plug-in數(shù)據(jù)的工具不免費 (例如Shockwave) 數(shù)據(jù)免費 (例如海量天氣數(shù)據(jù), 歷史股票數(shù)據(jù)等), 但表現(xiàn)那些數(shù)據(jù)的plug-in收費 plug-in在intranets中也許比在Internet中更有用 跨平臺性: Win95, 3.x, NT, OS/2, Mac, Unixes 通常難以做到 性能: 好于 Java, JavaScript. LiveConnect: Netscape推出的使plug-in 與 Java, JavaScript協(xié)同工作的技術(shù).,ActiveX Documents,Microsoft的瀏覽器方擴充技術(shù) (in a very general way) ActiveX技術(shù)的一個方面 源于OLE, 但富于OLE Internet Explorer 3.0就是由ActiveX Documents構(gòu)筑起來的,Internet Explorer 3.0,將瀏覽器的通用功能和顯示不同對象的具體功能分離開來 一般功能包括: navigating to a link, going forward and back, IEXPLORE.EXE, 提供一個基本框架 SHDOCVW.DLL, Web Browser object, 提供通用功能, 作為一個ActiveX Document Container. MSHTML.DLL, HTML viewer, an ActiveX Document server,Internet Explorer 3.0 (示意),ActiveX/DCOM,嵌入在NT 4.0及以后的系統(tǒng)中. 德國的Software AG已將DCOM在UNIX上實現(xiàn) (beta免費可得) 從COM到DCOM, 盡管擴充的內(nèi)容不很多, 但使得“enterprise computing”計算在Wintel結(jié)構(gòu)上成為可能. COM是Microsoft所有技術(shù)的根基. 有人比喻, COM對Microsoft相當(dāng)于粒子物理對整個宇宙.,從COM到ActiveX的演變,OLE 1 組合文檔 (字處理,電子表格,數(shù)據(jù)庫,畫圖) COM “各種軟件構(gòu)件怎么能夠相互提供服務(wù) ?” OLE 2 不僅是組合文檔技術(shù), 而是一種使各種 軟件相互作用的通用技術(shù) OLE (不再是一個縮略語) 1996.1 ActiveX OLE (還原到“組合文檔”) DCOM,構(gòu)件對象模型Component Object Model (COM),出發(fā)點: 讓軟件系統(tǒng)S由構(gòu)件C1, C2, , 組成 (COM object) 這些構(gòu)件C不一定是專門為S所設(shè)計的, 有些在S之前已存在 為這系統(tǒng)所設(shè)計的構(gòu)件將來可被其它系統(tǒng)所用, 將來設(shè)計的構(gòu)件還可用來擴充系統(tǒng)S的功能, 不需重新編譯鏈接. 構(gòu)件的內(nèi)部改變不影響其所參與的系統(tǒng)的功能 COM: 給出了一個關(guān)于什么能被稱為構(gòu)件 (COM 對象) 的規(guī)定 提供了一種以系統(tǒng)軟件形式存在的基礎(chǔ)設(shè)施, 使得滿足其規(guī)定的構(gòu)件能夠“互操作” (interoperate).,COM對象,多界面(interface), 每個界面包含一組方法 每個界面有兩個名字, 一是供程序員識別 (如LookUpWord), 二是GUID (Globally Unique Identifier, 128位), 特殊生成, 供計算機使用. 界面通常由Microsoft的IDL(界面描述語言)描述 一旦在發(fā)布的軟件中實現(xiàn), 界面就再不許修改. 每個構(gòu)件必須實現(xiàn)界面 IUnknown, 其它界面必須從它繼承.,COM對象,界面,界面,界面,一個簡單界面的描述,object, uuid(E7CD0D00-1827-11CF-9946-444553540000) interface ISpellChecker: IUnkown import “unknown.idl”; HRESULT LookUpWord (in OLECHAR word31, out boolean *found); HRESULT AddToDictionary (in OLECHAR word31); HRESULT RemoveFromDictionary (in OLECHAR word31); IUnkown 界面有三個基本方法QueryInterface, AddRef, Release.,ActiveX Document,一種特殊的COM object 要滿足COM object的一些基本要求, 例如實現(xiàn)IUnknown等 有一些特殊的界面, 例如 只能在ActiveX Document Container中活動 (ActiveX Document Container本身又是另一種COM object !),VRML (2.0),The Virtual Reality Modeling Language (第二版) /moving-worlds/spec/index.html,什么是VRML (2.0),一種語言, 用于描述三維物體和由它們構(gòu)成的三維場景; 該場景可以具有現(xiàn)實世界的多種特征、可以是動態(tài)的, 也可以和觀察者交互作用. 它最引人入勝的應(yīng)用是使人們能夠在Web上構(gòu)建動態(tài)的、具有豐富的傳感效應(yīng)的虛擬環(huán)境 VRML (2.0)不僅是VRML (1.0)的一個擴充.,圍繞VRML(2.0)的活動,語言的進(jìn)一步發(fā)展,標(biāo)準(zhǔn)化:VRML97 VRML瀏覽器(播放器)的開發(fā) CosmoPlayer, WorldView, Liquid Reality, 等 VRML應(yīng)用開發(fā)工具 /vrml/software/modelers.html VRML應(yīng)用開發(fā) 劇場訂票,商場購物,旅游景點介紹,等,VRML的主要能力,描述三維物體及由它們構(gòu)成的場景 動畫:使物體在三維空間中運動 在場景中播放聲音和電影 使觀察者能與場景交互作用:傳感與事件 通過腳本(用Java和JavaScript寫的)使觀察者在場景中的感受更加生動。,VRML (2.0) 文件的基本格式,文件擴展名:.wrl 第一行必須是:#VRML V2.0 utf8 這也是唯一必須有的內(nèi)容。后面是關(guān)于“節(jié)點”(Node)的描述和注釋 注釋用“#”開始,直到本行結(jié)束 VRML是區(qū)分大小寫字母的 現(xiàn)在的CosmoPlayer對詞法, 語法錯誤的處理非常弱 (難怪免費).,例子1: 一個半開口的圓柱體,#VRML V2.0 utf8 Shape appearance Appearance material Material #用缺省材質(zhì)和顏色 geometry Cylinder radius 3 height 6 side TRUE top FALSE bottom TRUE ,節(jié)點(node),VRML世界的基本單位,其地位相當(dāng)于面向?qū)ο笳Z言中的對象, 但語義簡單許多 節(jié)點由若干域(Field)描述. 每個域包括域名(也稱域的類型)和“值”. 節(jié)點的域可能是簡單的參數(shù), 如上例中的圓柱體節(jié)點有若干描述圓柱體的具體參數(shù). 節(jié)點的域也可能是另外的節(jié)點, 如上例中的Shape節(jié)點, 它含有兩個域, 名字分別為外觀(appearance)和幾何形狀(geometry), 其值都是別的節(jié)點. 節(jié)點描述和域的次序無關(guān) 從與外界交互的性質(zhì)上講, 節(jié)點的域分兩類: field, exposedField. (見后),VRML的節(jié)點 (續(xù)),有一些系統(tǒng)已定義的節(jié)點, 例如 Box, Cylinder, Shape, Material, SpotLight等 它們所含的域(名)是確定的, 例如radius等. VRML文本編寫者的任務(wù)就是要給這些域設(shè)計適當(dāng)?shù)闹?系統(tǒng)對這些域有缺省值, 例如Boxsize 2, 2, 2, Sphere radius 1 等. 用戶也可以自定義非規(guī)則幾何體節(jié)點 (見后),VRML的節(jié)點 (續(xù)),在文本規(guī)范說明中, VRML用特殊的記號表示節(jié)點中域的值的數(shù)據(jù)類型, 例如 SFBool表示邏輯量, 取值TRUE或FALSE, SFFloat表示浮點數(shù), SFColor表示3個0-1之間的浮點數(shù), 分別代表RGB 而MFFloat表示包括在方括號中的、由逗號或空格分開的多個浮點數(shù) 這里的SF表示“Single-valued Field”, MF記“Multiple-valued Field” 單值域并不一定就是一個數(shù)(例如SFColor含有3個數(shù)), 多個數(shù)的SF被看成一個整體.,兩個節(jié)點定義規(guī)范的例子,DirectionalLight on TRUE # exposed field SFBool intensity 1 # exposed field SFFloat ambientIntensity 0 # exposed field SFFloat color 1 1 1 # exposed field SFColor direction 0 0 -1 # exposed field SFVec3f 其中給出的值為缺省值, exposed field的基本含義是“可修改”. Inline url # exposed field MFString bboxCenter 0 0 0 # SFVec3f bboxSize -1 -1 -1 # SFVec3f , 缺省指示無界 ,VRML的節(jié)點類型,形狀節(jié)點(shape nodes) - 描述物體在空間中的幾何形狀 性質(zhì)節(jié)點(property nodes) - 定義形狀節(jié)點的渲染方式(顏色, 表面紋理等). 成組節(jié)點(group node) - 將多個其它節(jié)點組合成一個節(jié)點, 以便于統(tǒng)一處理. 還有環(huán)境效果節(jié)點, 例如各種性質(zhì)的光源.,描述三維物體及其場景,基本幾何體 geometry: Box, Sphere, Cone, Cylinder 表面特性 appearance: material, texture, . Shape節(jié)點: 通過賦予其一定的表面特性,使幾何體可見 空間位置 右手坐標(biāo)系統(tǒng): translation, rotation, scale 組合幾何體 Group, Transform, . 環(huán)境效果 DirectionalLight, PointLight, Spotlight,例子2: 簡單世界,#VRML V2.0 utf8 Group children DirectionalLight direction 0 0 -1 # the first child Transform # the second child translation 3 0 1 children Shape geometry Sphere radius 2.3 appearance Appearance material Material diffuseColor 1 0 0 Transform # the third child translation -2.4 .2 1 rotation 0 1 1 .9 # 不僅位移, 還要旋轉(zhuǎn) children Shape geometry Box appearance Appearance material Material diffuseColor 0 0 1 ,VRML的坐標(biāo)系統(tǒng),右手坐標(biāo)系統(tǒng), 缺省距離單位是米 基本幾何體的缺省位置是中心位于坐標(biāo)系統(tǒng)的原點 Box size 2 2 2 Cone bottomRadius 1 height 2 Cylinder radius 1 height 2 Sphere radius 1 缺省Viewpoint為 (0 0 10).,X,Y,Z,VRML的坐標(biāo)變換,translation x y z 將物體平行位移 rotation x y z r 按右手法則, 將物體圍繞由原點和 (x y z)確定的射線旋轉(zhuǎn)r弧度 scale x y z, 相對原點, 按照給出的比例因子在空間三個方向上放大(縮小) 注意: 變換是針對物體上每一個點的. 在成組節(jié)點中, 變換對組中的節(jié)點都有效. 嵌套的變換效果疊加, 由內(nèi)向外 變換順序: scale, rotation, translation 還有些可選參數(shù), 例如旋轉(zhuǎn)的原點, 放大的中心等,表面特性: Appearance節(jié)點,material域: 值為Material節(jié)點, 可有如下域 diffuseColor, 顏色的反射與入光角度有關(guān) shineness, 光潔度, 取值 0.0 - 1.0 transparency, 透明度, 取值 0.0 - 1.0 texture域: 值取ImageTexture, MovieTexture, PixelTexture節(jié)點之一 textureTransform域: TextureTransform節(jié)點. 用于在施用前對紋理做空間變換,例子3: 圖像紋理的應(yīng)用,#VRML V2.0 utf8 Shape geometry Box appearance Appearance texture ImageTexture url “ie.gif” ,例子4: 構(gòu)造一個四面體,#VRML V2.0 utf8 Shape geometry IndexedFaceSet coord Coordinate # 給出4個頂點的坐標(biāo) point 0 0 1, 1.7 0 -0.5, -1.7 0 -0.5, 0 1 0 # 用頂點序列來說明“面”, -1為分隔符.注意底面的節(jié)點順序, “右手法則” coordIndex 0 2 1 -1, 0 1 3 -1, 1 2 3 -1, 2 0 3 -1 color Color # 造一個顏色表 color 1 0 0, 0 1 0, 0 0 1, 1 1 0 #紅,綠,藍(lán),黃 colorIndex 1, 0, 2, 3 # 底面(0 2 1)用綠色, 等 colorPerVertex FALSE # 不要按頂點著色 ,VRML的動畫能力,Ability to change the world over time 不僅幾何位置的變化,還包括顏色、光線、聲音等。 具體表現(xiàn)在對有關(guān)節(jié)點屬性值的動態(tài)改變 如何啟動一個動畫過程 ? - VRML提供各種各樣的“傳感器”節(jié)點, 響應(yīng)用戶事件. 如何在時間上控制一個動畫過程 ?- TimeSensor節(jié)點 如何在行為上控制一個動畫過程 ?- 各種各樣的“插值器”節(jié)點 通過ROUTE語句進(jìn)行事件的傳播:VRML動畫的基本機制,一個最簡單的動畫例子 (eg5),#VRML V2.0 utf8 Group children DEF PUSH TouchSensor # 和下面的節(jié)點相聯(lián)系 Shape geometry Cone appearance Appearance material Material diffuseColor 1 0 1 Sound # 定義一個音響節(jié)點 source DEF BUZZ AudioClip url “mssound.wav“ maxFront 50 # no sound heard beyond minFront 5 # no change in volume within ROUTE PUSH.touchTime TO BUZZ.startTime,VRML的聲音和文字,Sound節(jié)點, 可以定義聲源在場景中的位置, 以及該聲音能被聽到的范圍 AudioClip節(jié)點, 出現(xiàn)在Sound節(jié)點的source域中, 指出聲音文件. 該節(jié)點還含有l(wèi)oop, startTime, stopTime等exposed fields以控制聲音播放 Text節(jié)點, 作為一種geometry節(jié)點, 給出文字信息 FontStyle節(jié)點, 出現(xiàn)在Text節(jié)點的fontStyle域中, 描述文字的字體等,文字例子 (eg6),#VRML V2.0 utf8 Shape geometry Text string “Internet and Java Technologies“ fontStyle FontStyle size 1.5 family “SERIF“ style “BOLD“ ,VRML的事件: 交互與動態(tài)的基礎(chǔ),事件是某些節(jié)點的性質(zhì)(在VRML的53種節(jié)點中, 多數(shù)與事件有關(guān)) 如何知道什么節(jié)點與什么事件有關(guān) 節(jié)點規(guī)范中的顯示說明 節(jié)點的exposed Field域隱含相關(guān)事件 ROUTE語句: 讓不同節(jié)點之間事件相互聯(lián)系的手段 (起一個類似于賦值語句的作用),接觸傳感器規(guī)范說明的例子,TouchSensor enabled TRUE # exposed field SFBool Field enabled 指出該傳感器當(dāng)前是否處于工作狀態(tài) Events isOver eventOut, SFBool, 指出鼠標(biāo)正放在兄弟幾何節(jié)點之上 isActive eventOut, SFBool, 指出鼠標(biāo)已經(jīng)按下 touchTime eventOut, SFTime, 指出鼠標(biāo)按下后釋放的時間 hitPoint_changed eventOut, SFVec3f, 指出位置的變化 hitNormal_changed eventOut, SFVec3f, 指出法線的變化 hitTexCoord_changed eventOut, SFVec2f, 指出紋理坐標(biāo)的變化,Transform bboxCenter 0 0 0 # SFVec3f bboxSize -1 -1 -1 # SFVec3f translation 0 0 0 # exposed field SFVec3f rotation 0 0 1 0 # exposed field SFRotation scale 1 1 1 # exposed field SFVec3f scaleOrientation 0 0 1 0 # exposed field SFRotation center 0 0 0 # exposed field SFVec3f children # exposed field MFNode 任何一個exposed field都隱含對應(yīng)兩個事件, 于是Transform相當(dāng)于有事件 set_translation (輸入事件, eventIn) translation_changed (輸出事件, eventOut) set_rotation, rotation_changed, 等等,TimeSensor,TimeSensor cycleInterval 1 # exposed 秒為單位的周期長度 enabled TRUE loop FALSE # exposed 是否應(yīng)無限重復(fù) startTime 0 stopTime 0 還有專門eventOut事件fraction_changed, 表示當(dāng)前周期(cycleInterval)已經(jīng)完成.,PositionInterpolator: 位置插值器,PositionInterpolator key # exposed field MFFloat keyValue # exposed field MFVec3f

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論