版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1第4章二維圖形動(dòng)畫原理學(xué)習(xí)提示:基于XML規(guī)范的多媒體應(yīng)用有XHTML、SVG/XAML、X3D等,可形成媒體的整體解決方案。本章將系統(tǒng)敘述XML二維圖形動(dòng)畫應(yīng)用——XAML的基本原理,為后面介紹二維圖形動(dòng)畫的具體應(yīng)用奠定理論基礎(chǔ)。本章主要以代碼的方式敘述XAML,建議結(jié)合第11章進(jìn)行上機(jī)實(shí)驗(yàn)。本章學(xué)習(xí)目標(biāo)如下:l 理解SVG/XAML是XML二維圖形動(dòng)畫媒體應(yīng)用。l 掌握XAML常用元素的功能和用法。l 掌握XAML布局容器。l 掌握XAML坐標(biāo)系變換。l 理解XAML路徑(二維形狀定義標(biāo)準(zhǔn)),路徑與規(guī)則形狀的相互關(guān)系。l 理解XAML形狀填涂為圖形的機(jī)制(圖形格式)。筆畫與填充,單色、漸變色、圖案,透明度。l 理解XAML效果。l 掌握XAML動(dòng)畫。l 理解XAML屏蔽/剪切路徑。l 掌握XAML與外部媒體引用。l 理解XAML資源與引用。l 掌握XAML超鏈接。24.1XML二維圖形動(dòng)畫應(yīng)用XAML/Silverlight簡介XAML還著力解決本機(jī)應(yīng)用程序界面(典型地如Windows窗口界面機(jī)制)與Web應(yīng)用程序界面(典型地如IE等瀏覽器窗口中XHTML文檔界面機(jī)制)的技術(shù)統(tǒng)一,Web是XAML/Silverlight技術(shù);本機(jī)是XAML/.NETWPF技術(shù)。XAML/Silverlight是XAML/.NETWPF的一個(gè)子集,原理機(jī)制完全一致,只是可實(shí)現(xiàn)的功能范圍有所差異而已。這樣界面只要設(shè)計(jì)一次,Web、本機(jī)都可使用,這無疑會(huì)大大地提高軟件系統(tǒng)的開發(fā)效率。XAML是eXtensibleApplicationMarkupLanguage的首字母縮寫,中文意譯為可擴(kuò)展應(yīng)用程序標(biāo)記語言,當(dāng)前最高版本是3.0。XAML是一種描述Web/本機(jī)二維圖形動(dòng)畫的語言。XAML二維圖形動(dòng)畫技術(shù)擁有當(dāng)前流行的二維圖形動(dòng)畫的基本功能,還具有可交換性、交互性、可擴(kuò)展性、易維護(hù)性等優(yōu)點(diǎn),可完美結(jié)合XHTML、腳本語言等實(shí)現(xiàn)強(qiáng)大的Web/本機(jī)多媒體應(yīng)用。XAML和XHTML在語法、功能等眾多方面都具有相似性。只不過XHTML偏重于超文本理念,而XAML偏重于二維圖形理念。將XAML與XHTML對(duì)比理解,是掌握XAML的捷徑。XAML文檔屬于互動(dòng)式二維圖形動(dòng)畫視覺媒體,基本原理可參見第1章中與互動(dòng)式二維圖形動(dòng)畫緊密相關(guān)的內(nèi)容,特別是二維布局、時(shí)間特性、交互性等。該部分則將以代碼的方式敘述XAML,XAML功能強(qiáng)大、元素及其特性豐富,應(yīng)該注重掌握XAML的基本原理,并結(jié)合ExpressionBlend軟件(將在第11章詳述)進(jìn)行操作實(shí)驗(yàn)。34.2XAML文檔結(jié)構(gòu)、元素、CSS、DOM1.
XAML文檔基本結(jié)構(gòu)2.
XAML文檔架構(gòu)及其元素概述(1)布局系統(tǒng)(LayoutPanel)類元素(2)布局變換(Transform)類元素(3)路徑(Path)類元素(4)基本形狀(BasicShape)類元素(5)文本(Text)類元素(6)填涂(Painter)類元素(7)效果(Effect)類元素(8)屏蔽/剪切(Mask/Clip)類元素(9)外部媒體引用(ExternalReference)類元素(10)動(dòng)畫(Animation)類元素(11)超鏈接(Hyperlink)類元素(12)控件(Control)類元素(13)
EventTrigger3.關(guān)于XAML特性元素4.關(guān)于XAML標(biāo)記擴(kuò)展5.
XAML文檔樣式與CSS6.
XAML文檔邏輯結(jié)構(gòu)與DOM44.3XAML文檔編輯和瀏覽1.
XAML文檔瀏覽(1)本機(jī)瀏覽(2)瀏覽器中瀏覽(3)本機(jī)瀏覽與瀏覽器中瀏覽的異同2.
XAML文檔編輯54.4XAML布局1.布局系統(tǒng)、元素占位、文檔尺寸(1)
Canvas布局元素。(2)
Grid布局元素。(3)
StackPanel布局元素(4)
ScrollViewer布局元素。(5)
Border布局元素(6)
XAML還允許結(jié)合JScript、C#等編程創(chuàng)建自定義布局系統(tǒng),涉及系統(tǒng)的編程知識(shí),根據(jù)立體化課程理念,將在后續(xù)課程涉及。2.坐標(biāo)系變換3.層64.5XAML路徑——二維形狀定義標(biāo)準(zhǔn)XAML使用<Path>(路徑元素)來生成復(fù)雜的曲線或圖形輪廓,然后通過進(jìn)一步處理(如填充、筆畫等填涂)而獲得XAML復(fù)雜圖形效果。圖4-6示例文件path-Ellipse.xaml的運(yùn)行結(jié)果路徑(Path)是二維形狀定義的標(biāo)準(zhǔn)。任何圖形的輪廓(又稱為形狀)都可理解為是由一條或一組曲線進(jìn)行描述的,而任何曲線又都是通過一組點(diǎn)進(jìn)行定義的。代碼4-5所示的示例使用<Path>元素生成了一個(gè)橢圓,運(yùn)行結(jié)果如圖4-6所示。參見教材P9174.6XAML基本形狀圖4-7示例文件basicShape-Ellipse.xaml的運(yùn)行結(jié)果XAML基本形狀是指數(shù)學(xué)規(guī)律上較簡單的曲線或圖形輪廓,如直線、矩形、橢圓等?;拘螤钸M(jìn)一步處理(如填充、筆畫等填涂)而獲得圖形效果。XAML包含下列常用的基本形狀元素:<Ellipse>、<Line>、<Polygon>、<Polyline>、<Rectangle>等,在此以<Ellipse>元素生成一個(gè)橢圓為例進(jìn)行敘述,其他規(guī)則形狀元素將在11.7.2節(jié)結(jié)合上機(jī)實(shí)驗(yàn)敘述。代碼4-6所示的示例使用<Ellipse>元素生成了一個(gè)橢圓,運(yùn)行結(jié)果如圖4-7所示,和圖4-6所示的使用<Path>元素生成橢圓的結(jié)果完全相同,可見,<Path>元素生成形狀是通用的,而<Ellipse>基本形狀元素則可更快捷生成規(guī)則的形狀,并可減小文件的復(fù)雜性和容量。參見教材P9384.7XAML形狀的填涂/畫筆使用<Path>或<Ellipse>等基本形狀元素生成各種形狀后,再對(duì)形狀進(jìn)行填涂,就可獲得想要的圖形效果。填涂可以分別對(duì)形狀的Stroke(筆畫,即形狀的輪廓線)和Fill(填充,即形狀的內(nèi)部)進(jìn)行。填涂的內(nèi)容可以是SolidColor(單色),Gradient(漸變色)或Pattern(圖案)。還可設(shè)置Opacity(不透明度)、Mask/Clip(屏蔽/剪切)、Effect(效果)等。94.7.1筆畫和填充一個(gè)XAML形狀可分為筆畫和填充兩部分分別進(jìn)行填涂處理,筆畫部分是指形狀的輪廓線;填充部分是指形狀輪廓線包圍的內(nèi)部區(qū)域。代碼4-7是對(duì)形狀的筆畫和填充分別進(jìn)行處理的一個(gè)示例,運(yùn)行結(jié)果如圖4?8所示。參見教材P93104.7.2單色圖4-8中,筆畫和填充部分填涂的就是單色。顏色機(jī)制參見1.3.1節(jié)、3.6.4節(jié)。為了方便使用和兼顧兼容性,顏色可以選用如下表示方法。(1)可以用一個(gè)顏色關(guān)鍵詞。常用的顏色關(guān)鍵詞是:aqua、black、blue、fuchsia、gray、green、lime、maroon、navy、olive、purple、red、silver、teal、white和yellow。如:Stroke="Black"。(2)
#符號(hào)后緊跟2位十六進(jìn)制的不透明度數(shù)值+6位十六進(jìn)制的顏色數(shù)值來表示。如:Fill="#FF0D5C88"。114.7.3漸變色代碼4-8是為形狀的填充部分填涂漸變色的示例,運(yùn)行結(jié)果如圖4?9所示。更多的漸變色將在11.7.5節(jié)結(jié)合上機(jī)實(shí)驗(yàn)詳述。參見教材P94124.7.4圖案圖案(Pattern)可以是圖形圖案(如填充外部XAML代碼文件,<ImageBrush>元素定義),也可以是圖像圖案(Texture,又稱為材圖、紋理,<ImageBrush>元素定義),還可以是視頻圖案(<VideoBrush>元素定義)。代碼4-9是為圖形的填充部分填涂圖像圖案的示例,運(yùn)行結(jié)果如圖4?10所示。更多的圖案將在11.7.5節(jié)結(jié)合上機(jī)實(shí)驗(yàn)詳述。參見教材P95134.7.5不透明度透明度機(jī)制參見1.3.1節(jié),又常以O(shè)pacity(不透明度)方式表示,以[0,1.0]區(qū)間值表示,默認(rèn)值為1.0,即完全不透明。代碼4-10是為XAML圖形應(yīng)用透明度的一個(gè)示例,運(yùn)行結(jié)果如圖4-11所示。參見教材P96144.7.6屏蔽/剪切屏蔽/剪切類元素作為形狀類元素的特性元素而使用,用來獲得通常繪畫方法難以獲得的透明效果。代碼4-11是不透明度屏蔽的一個(gè)示例,運(yùn)行結(jié)果如圖4-12所示。參見教材P96代碼4-12是剪切的一個(gè)示例,運(yùn)行結(jié)果如圖4-13所示。參見教材P97 154.7.7效果XAML支持通過元素的effect特性元素來獲得效果。代碼4-13是為XAML圖形應(yīng)用效果的一個(gè)示例。參見教材P98應(yīng)用了效果的XAML文檔不能直接在IE中調(diào)用Silverlight插件瀏覽,必須編譯后瀏覽。effect.xaml的運(yùn)行結(jié)果如圖4-14所示,獲得了通常的圖形編輯方法難以獲得的陰影視覺效果。XAML效果(Effect)有時(shí)也稱為濾鏡(Filter),是調(diào)用預(yù)先編寫好的用來獲得圖形、圖像特效的組件程序而獲得效果。XAML效果的功能主要依靠XAML瀏覽器(如Silverlight)所支持的大量預(yù)定義的效果功能。164.8XAML文本在XAML文檔中需要使用文本時(shí),可以使用<TextBlock>、<TextBox>、<PasswordBox>等生成文本并根據(jù)文本布局特性進(jìn)行布局。代碼4-14是<TextBlock>元素生成一行文本的示例,運(yùn)行結(jié)果如圖4?15所示。參見教材P99XAML中的文本與其他二維圖形元素的機(jī)制類似,所以適用于二維圖形元素的特性,也同樣適用于<text>元素,如二維坐標(biāo)變換等。XAML中的文本可以看作具有文本布局特性的形狀,因此文本排版功能不及XHTML等面向文本的機(jī)制,但更容易獲得文本的圖形化視覺效果。174.9XAML與外部媒體引用XAML可以直接定義二維圖形動(dòng)畫、文本,同時(shí)可以引用集成外部文本、圖像、圖形、視頻、動(dòng)畫、波形音頻、MIDI器樂等已保存為文件的媒體。此外XAML文檔支持引用已保存為文件的其他XAML文檔,這樣有利于XAML文檔的擴(kuò)展式重復(fù)使用。代碼4-15是通過<Image>元素引用外部圖像的一個(gè)示例,運(yùn)行結(jié)果如圖4-16所示。參見教材P100184.10XAML動(dòng)畫XAML支持動(dòng)畫,動(dòng)畫的基本原理參見1.5.1節(jié)。從動(dòng)畫機(jī)制的角度,XAML提供兩大類動(dòng)畫類型,即內(nèi)插幀動(dòng)畫和持續(xù)幀動(dòng)畫。194.10.1內(nèi)插幀動(dòng)畫代碼4-18的示例使用<DoubleAnimationUsingKeyFrames>元素對(duì)<Rectangle>元素的透明度屬性值隨時(shí)間/關(guān)鍵幀而進(jìn)行內(nèi)插值計(jì)算,從而獲得<Rectangle>元素生成的矩形的透明度隨時(shí)間變化的動(dòng)畫效果,屬于內(nèi)插幀動(dòng)畫。運(yùn)行結(jié)果將如圖4?17所示,獲得矩形慢慢消失的動(dòng)畫效果。內(nèi)插幀動(dòng)畫機(jī)制常用于對(duì)象屬性賦數(shù)值等可進(jìn)行內(nèi)插幀計(jì)算的動(dòng)畫效果。參見教材P102
204.10.2持續(xù)幀動(dòng)畫代碼4-19的示例使用<ObjectAnimationUsingKeyFrame>元素隨時(shí)間/關(guān)鍵幀不斷顯示新的對(duì)象或?qū)ο髮傩?,并使?duì)象或?qū)ο髮傩灾党掷m(xù)想要的時(shí)間,而不是進(jìn)行內(nèi)插幀計(jì)算,屬于持續(xù)幀動(dòng)畫運(yùn)行結(jié)果將如圖4-18所示,獲得矩形在三種顏色之間切換的動(dòng)畫效果。持續(xù)幀動(dòng)畫機(jī)制常用于不需要或無法進(jìn)行內(nèi)插幀計(jì)算的動(dòng)畫效果。參見教材P103
214.11XAML與超鏈接作為互動(dòng)式二維圖形動(dòng)畫,XAML支持超鏈接的功能,這與XHTML超鏈接類似(參見3.7.1節(jié))。XAML超鏈接通過<HyperlinkButton>元素實(shí)現(xiàn),代碼4-20是一個(gè)示例。不過基于安全性考慮,必須編譯后才能運(yùn)行。XAML超鏈接是驅(qū)動(dòng)XAML互動(dòng)式應(yīng)用的重要機(jī)制。參見教材P104XAML從媒體的角度可稱為超二維圖形動(dòng)畫媒體。XAML編輯者則可在超鏈接(事件)驅(qū)動(dòng)為主導(dǎo)還是動(dòng)畫(時(shí)間)驅(qū)動(dòng)為主導(dǎo)之間做出選擇。224.12XAML資源定義與引用XAML資源的目的是為了重用,資源通過特性元素定義,然后通過標(biāo)記擴(kuò)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高職(現(xiàn)代農(nóng)業(yè)技術(shù))農(nóng)業(yè)技術(shù)推廣測(cè)試題及答案
- 2025年中職建筑工程技術(shù)(門窗工程施工)試題及答案
- 2025年高職植物生產(chǎn)管理應(yīng)用管理(管理技術(shù))試題及答案
- 2025年高職第一學(xué)年(動(dòng)漫設(shè)計(jì))動(dòng)畫制作綜合試題及答案
- 2025年大學(xué)大一(信息安全)信息安全導(dǎo)論階段測(cè)試試題及答案
- 2025年大學(xué)二年級(jí)(水利水電工程)水利水電基礎(chǔ)試題及答案
- 2026年口腔修復(fù)(種植牙修復(fù))試題及答案
- 2025年大學(xué)食品質(zhì)量與安全(食品質(zhì)量管理學(xué))試題及答案
- 2025年高職第一學(xué)年(鐵道機(jī)車運(yùn)用與維護(hù))機(jī)車構(gòu)造基礎(chǔ)測(cè)試題及答案
- 2025年大學(xué)大四(新媒體運(yùn)營)新媒體危機(jī)公關(guān)實(shí)務(wù)試題及答案
- 風(fēng)電場防寒防凍知識(shí)培訓(xùn)課件
- 藥品近效期管理知識(shí)培訓(xùn)課件
- 胎兒大腦中動(dòng)脈課件
- 飲料廠品控安全培訓(xùn)內(nèi)容課件
- 2024廣東職業(yè)技術(shù)學(xué)院教師招聘考試真題及答案
- 柳鋼除塵灰資源綜合利用項(xiàng)目環(huán)境影響報(bào)告表
- 喉癌解剖結(jié)構(gòu)講解
- 計(jì)算機(jī)思政說課課件
- 少兒c語言教學(xué)課件
- (2025)社區(qū)網(wǎng)格員筆試考試題庫及答案
- 子宮內(nèi)膜異位癥病例討論
評(píng)論
0/150
提交評(píng)論