有才華的人,別忘記給滋潤你的那塊土壤施肥

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            28 隨筆 :: 5 文章 :: 147 評論 :: 0 Trackbacks
          濾鏡的工作原理
          顯示對象過濾是通過將原始對象的副本緩存為透明位圖來工作的。
          將濾鏡應(yīng)用于顯示對象后,只要此對象具有有效的濾鏡列表,Adobe Flash Player 就會將該
          對象緩存為位圖。然后,將此位圖用作所有后續(xù)應(yīng)用的濾鏡效果的原始圖像。
          每個顯示對象通常包含兩個位圖:一個包含原始未過濾的源顯示對象,另一個用于過濾后的
          最終圖像。呈現(xiàn)時使用最終圖像。只要顯示對象不發(fā)生更改,最終圖像就不需要更新。

          在運行時更改濾鏡
          如果已經(jīng)對顯示對象應(yīng)用了一個或多個濾鏡,則無法向 filters 屬性數(shù)組添加其它濾鏡。若
          要添加或更改應(yīng)用的這組濾鏡,需要創(chuàng)建整個濾鏡數(shù)組的副本,然后對此(臨時)數(shù)組進行
          修改。然后,將此數(shù)組重新分配給顯示對象的 filters 屬性,這樣才能將濾鏡應(yīng)用于該對
          象。

          濾鏡和對象變形
          在顯示對象的邊框矩形之外的任何過濾區(qū)域(例如投影)都不能視為可進行點擊檢測(確定
          實例是否與其它實例重疊或交叉)的表面。由于 DisplayObject 類的點擊檢測方法是基于矢
          量的,因此無法在位圖結(jié)果上執(zhí)行點擊檢測。例如,如果您對按鈕實例應(yīng)用斜角濾鏡,則在
          該實例的斜角部分,點擊檢測不可用。
          濾鏡不支持縮放、旋轉(zhuǎn)和傾斜;如果過濾的顯示對象本身進行了縮放(如果 scaleX 和
          scaleY 不是 100%),則濾鏡效果將不隨該實例縮放。這意味著,實例的原始形狀將旋轉(zhuǎn)、
          縮放或傾斜;而濾鏡不隨實例一起旋轉(zhuǎn)、縮放或傾斜。
          可以使用濾鏡給實例添加動畫,以形成理想的效果,或者嵌套實例并使用 BitmapData 類使
          濾鏡動起來,以獲得此效果。

          可用的顯示濾鏡
          ActionScript 3.0 包括 9 個可用于顯示對象和 BitmapData 對象的濾鏡類:
          ■ 斜角濾鏡(BevelFilter 類)
          ■ 模糊濾鏡(BlurFilter 類)
          ■ 投影濾鏡(DropShadowFilter 類)
          ■ 發(fā)光濾鏡(GlowFilter 類)
          ■ 漸變斜角濾鏡(GradientBevelFilter 類)
          ■ 漸變發(fā)光濾鏡(GradientGlowFilter 類)
          ■ 顏色矩陣濾鏡(ColorMatrixFilter 類)
          ■ 卷積濾鏡(ConvolutionFilter 類)
          ■ 置換圖濾鏡(DisplacementMapFilter 類)

          斜角濾鏡
          BevelFilter 類允許您對過濾的對象添加三維斜面邊緣。此濾鏡可使對象的硬角或邊緣具有硬
          角或邊緣被鑿削或呈斜面的效果。
          BevelFilter 類屬性允許您自定義斜角的外觀。您可以設(shè)置加亮和陰影顏色、斜角邊緣模糊、
          斜角角度和斜角邊緣的位置,甚至可以創(chuàng)建挖空效果。

          模糊濾鏡
          BlurFilter 類可使顯示對象及其內(nèi)容具有涂抹或模糊的效果。模糊效果可以用于產(chǎn)生對象不
          在焦點之內(nèi)的視覺效果,也可以用于模擬快速運動,比如運動模糊。通過將模糊濾鏡的
          quality 屬性設(shè)置為低,可以模擬輕輕離開焦點的鏡頭效果。將 quality 屬性設(shè)置為高會
          產(chǎn)生類似高斯模糊的平滑模糊效果。

          投影濾鏡
          投影給人一種目標(biāo)對象上方有獨立光源的印象。可以修改此光源的位置和強度,以產(chǎn)生各種
          不同的投影效果。
          投影濾鏡使用與模糊濾鏡的算法相似的算法。主要區(qū)別是投影濾鏡有更多的屬性,您可以修
          改這些屬性來模擬不同的光源屬性(如 Alpha、顏色、偏移和亮度)。
          投影濾鏡還允許您對投影的樣式應(yīng)用自定義變形選項,包括內(nèi)側(cè)或外側(cè)陰影和挖空(也稱為
          剪切塊)模式。

          發(fā)光濾鏡
          GlowFilter 類對顯示對象應(yīng)用加亮效果,使顯示對象看起來像是被下方的燈光照亮,可創(chuàng)造
          出一種柔和發(fā)光效果。
          與投影濾鏡類似,發(fā)光濾鏡包括的屬性可修改光源的距離、角度和顏色,以產(chǎn)生各種不同效
          果。GlowFilter 還有多個選項用于修改發(fā)光樣式,包括內(nèi)側(cè)或外側(cè)發(fā)光和挖空模式。

          漸變斜角濾鏡
          GradientBevelFilter 類允許您對顯示對象或 BitmapData 對象應(yīng)用增強的斜角效果。在斜
          角上使用漸變顏色可以大大改善斜角的空間深度,使邊緣產(chǎn)生一種更逼真的三維外觀效果。

          漸變發(fā)光濾鏡
          GradientGlowFilter 類允許您對顯示對象或 BitmapData 對象應(yīng)用增強的發(fā)光效果。該效
          果可使您更好地控制發(fā)光顏色,因而可產(chǎn)生一種更逼真的發(fā)光效果。另外,漸變發(fā)光濾鏡還
          允許您對對象的內(nèi)側(cè)、外側(cè)或上側(cè)邊緣應(yīng)用漸變發(fā)光。

          顏色矩陣濾鏡
          ColorMatrixFilter 類用于操作過濾對象的顏色和 Alpha 值。它允許您進行飽和度更改、色
          相旋轉(zhuǎn)(將調(diào)色板從一個顏色范圍移動到另一個顏色范圍)、將亮度更改為 Alpha,以及生
          成其它顏色操作效果,方法是使用一個顏色通道中的值,并將這些值潛移默化地應(yīng)用于其它
          通道。
          從概念上來說,濾鏡將逐一處理源圖像中的像素,并將每個像素分為紅、綠、藍和 Alpha 組
          件。然后,用每個值乘以顏色矩陣中提供的值,將結(jié)果加在一起以確定該像素將顯示在屏幕
          上的最終顏色值。濾鏡的 matrix 屬性是一個由 20 個數(shù)字組成的數(shù)組,用于計算最終顏色。
          有關(guān)用于計算顏色值的特定算法的詳細(xì)信息,請參閱《ActionScript 3.0 語言和組件參考》
          中說明 ColorMatrixFilter 類的 matrix 屬性的條目。

           

          卷積濾鏡
          ConvolutionFilter 類可用于對 BitmapData 對象或顯示對象應(yīng)用廣泛的圖像變形,如模
          糊、邊緣檢測、銳化、浮雕和斜角。
          從概念上來說,卷積濾鏡會逐一處理源圖像中的每個像素,并使用像素和它周圍的像素的值
          來確定該像素的最終顏色。指定為數(shù)值數(shù)組的矩陣可以指示每個特定鄰近像素的值對最終結(jié)
          果值具有何種程度的影響。

          置換圖濾鏡
          DisplacementMapFilter 類使用 BitmapData 對象(稱為置換圖圖像)中的像素值在新對
          象上執(zhí)行置換效果。通常,置換圖圖像與將要應(yīng)用濾鏡的實際顯示對象或 BitmapData 實例
          不同。置換效果包括置換過濾的圖像中的像素,也就是說,將這些像素移開原始位置一定距
          離。此濾鏡可用于產(chǎn)生移位、扭曲或斑點效果。
          應(yīng)用于給定像素的置換位置和置換量由置換圖圖像的顏色值確定。使用濾鏡時,除了指定置
          換圖圖像外,還要指定以下值,以便控制置換圖圖像中計算置換的方式:
          ■ 映射點:過濾圖像上的位置,在該點將應(yīng)用置換濾鏡的左上角。如果只想對圖像的一部
          分應(yīng)用濾鏡,可以使用此值。
          ■ X 組件:影響像素的 x 位置的置換圖圖像的顏色通道。
          ■ Y 組件:影響像素的 y 位置的置換圖圖像的顏色通道。
          ■ X 縮放比例:指定 x 軸置換強度的乘數(shù)值。
          ■ Y 縮放比例:指定 y 軸置換強度的乘數(shù)值。
          420 過濾顯示對象
          ■ 濾鏡模式:確定在移開像素后形成的空白區(qū)域中, Flash Player 應(yīng)執(zhí)行什么操作。在
          DisplacementMapFilterMode 類中定義為常量的選項可以顯示原始像素(濾鏡模式
          IGNORE)、從圖像的另一側(cè)環(huán)繞像素(濾鏡模式 WRAP,這是默認(rèn)設(shè)置)、使用最近的移
          位像素(濾鏡模式 CLAMP)或用顏色填充空間(濾鏡模式 COLOR)。

          posted on 2009-07-26 22:30 kissjava 閱讀(970) 評論(0)  編輯  收藏 所屬分類: Flex
          主站蜘蛛池模板: 油尖旺区| 镇原县| 德钦县| 贡嘎县| 鄢陵县| 调兵山市| 东方市| 杭锦后旗| 页游| 连云港市| 玉山县| 紫阳县| 宁明县| 临清市| 龙口市| 临海市| 磴口县| 温宿县| 九寨沟县| 紫金县| 芦溪县| 张家川| 喜德县| 平陆县| 略阳县| 南靖县| 灵寿县| 安陆市| 楚雄市| 大安市| 古丈县| 五寨县| 樟树市| 灌阳县| 博乐市| 板桥市| 西青区| 台南市| 桃园市| 民丰县| 万山特区|