• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      Flash ActionScript在動態(tài)改變影片剪輯顏色中的應(yīng)用

      2013-12-31 00:00:00徐連霞蔣道霞
      電子世界 2013年18期

      【摘要】Flash是一種動畫創(chuàng)作與應(yīng)用程序開發(fā)于一身的創(chuàng)作軟件。ActionScript的發(fā)布后,除了具備強大的動畫制作功能外,實現(xiàn)了較完整的面向?qū)ο缶幊棠P?,具備了開發(fā)大型應(yīng)用程序的能力。本文對ActionScript在動態(tài)改變影片剪輯顏色的應(yīng)用做了論述。

      【關(guān)鍵詞】Flash;ActionScript;影片剪輯

      1.引言

      Flash是一種動畫創(chuàng)作與應(yīng)用程序開發(fā)于一身的創(chuàng)作軟件,同時Flash也是一個非常優(yōu)秀的矢量動畫制作軟件,它以流式控制技術(shù)和矢量技術(shù)為核心,制作的動畫具有短小精悍的特點,所以被廣泛應(yīng)用于網(wǎng)頁動畫的設(shè)計中,以成為當(dāng)前網(wǎng)頁動畫設(shè)計最為流行的軟件之一。

      2.Flash中的Action Script

      AS就是Action Script的意思,直接翻譯過來是“動作腳本”,實際是控制Flash中各種元件動作屬性的一種語言。最初是一種簡單的腳本語言,現(xiàn)在最新版本3.0,是一種完全的面向?qū)ο蟮木幊陶Z言,功能強大,類庫豐富,語法類似JavaScript,多用于Flash互動性、娛樂性、實用性開發(fā),網(wǎng)頁制作和RIA應(yīng)用程序開發(fā)[1]。

      從Macromedia大刀闊斧對As1.0進行改革到AS2.0,這一段過程看上去還算長一些,從Flash MX到Flash MX2004到Flash 7.2再到Flash 8.Macromedia又緊羅密鼓的推出了Flash9預(yù)覽版,Adobe發(fā)布的預(yù)覽版可以對AS3.0進行編譯,而As3.0經(jīng)過測試它的速度可以說要比之前的AS2.0快10倍。拿著AS3.0與AS2.0相對比,它看上去就象是重寫的一種新語言一樣[2]。

      以打印Hello World為例。

      ActionScript 2.0:值得注意的是這只能在整合環(huán)境下執(zhí)行,因為trace函式只有支持整合環(huán)境。

      trace(\"Hello world!\");

      下面代碼利用onMouseMove事件當(dāng)鼠標移動時輸出現(xiàn)行鼠標位置。同樣的這只有在整合環(huán)境下執(zhí)行。

      onMouseMove = function () {

      trace(\"X:\"+_root._xmouse);

      trace(\"Y:\"+_root._ymouse);

      };

      這個較先進的范例創(chuàng)造一個包括數(shù)字與字符串的數(shù)組,并利用原形函式(prototype function)與函式遞歸給變量名num指定一個數(shù),給變量str指定一個字符串。然后,利用MovieClip應(yīng)用程序接口,文字區(qū)域被顯示在屏幕上,文字區(qū)域里頭寫入了變量值。

      varmy_Array:Array=new Array(\"Hello\",\"ActionScript\",3,7,11,\"Flash\");

      Array.prototype.pickNumber=function ():Number {

      var rand:Number=random(this.length);

      return (typeof(this[rand])==\"number\")?this[rand]:this.pickNumber();

      };

      ActionScript 3.0:下面先進的Hello World程序需要在Flex 2.0公開Alpha測試版整合環(huán)境中編譯。

      package {

      import flash.text.TextField;

      import flash.filters.DropShadowFilter;

      public class HelloWorld extends MovieClip {

      public function HelloWorld() {

      var shad:DropShadowFilter = new DropShadowFilter(2,45,0x000000,25,3,3,2,2);

      var txt:TextField =new TextField();

      txt.x =Math.random()*300;

      txt.y =Math.random()*300;

      txt.selectable = 1;

      txt.text = \"Hello World![\"+Math.round(txt.x)+\",\"+Math.round(txt.y)+\"]\";

      addChild(txt);

      }

      }

      }

      as3.0最重要的概念就是在效能方面的增進,平時所加入的任何事件都可以被監(jiān)聽或從內(nèi)存中移除。以下例子就是監(jiān)聽與移除內(nèi)存占用,這是as3.0最重要的基礎(chǔ)概念。

      bt1.addEventListener(MouseEvent.CLICK,bt1_click);

      function bt1_click(e:MouseEvent):void{//觸發(fā)的事件內(nèi)容;}

      //該按紐監(jiān)聽不需要時則remove掉,增加效能,bt1.removeEventListener(MouseEvent.CLICK,bt1_click);

      Flash使用ActionScript給動畫添加交互性。在簡單動畫中,F(xiàn)lash按順序播放動畫中的場景和幀,而在交互動畫中,用戶可以使用鍵盤或鼠標與動畫交互。例如,可以單擊動畫中的按鈕,然后跳轉(zhuǎn)到動畫的不同部分繼續(xù)播放;可以移動動畫中的對象;可以在表單中輸入信息等等。使用ActionScript可以控制Flash動畫中的對象,創(chuàng)建導(dǎo)航元素和交互元素,擴展Flash創(chuàng)作交互動畫和網(wǎng)絡(luò)應(yīng)用的能力[3]。

      3.ActionScript語言隨機修改顏色

      在Flash制作中經(jīng)常要對文字、圖案等做顏色的變化,如果一個一個去設(shè)定和修改顏色,那非常麻煩。這個時候可以大展身手了,下面對其操作方法論述一番。

      (1)Flash影片剪輯隨機改變顏色的制作

      ①影片剪輯命名

      將要改變顏色的影片剪輯在舞臺定位后,點擊舞臺上的該影片剪輯,將其“屬性”中的“實例名稱”修改為“ypjj”。當(dāng)然可以隨意命名,但必須與用AS語句中指定的影片剪輯一致。

      ②添加AS語句

      將影片剪輯所在“層”所在“幀”設(shè)置為關(guān)鍵幀(多幀的影片剪輯,其第一幀),點擊該幀,點開“動作―幀”,將AS語句寫入。

      sjkz=zds=20;

      ffco101=new Color(ypjj);

      ypjj.onEnterFrame=function(){

      sjkz++;

      if(sjkz>zds){

      sjkz=0;

      =Random(0xffffff);

      ffco101.setRGB(co101);

      }

      }

      AS語句簡單說明:sjkz=zds=20;改變顏色的時間(20個幀的時間)。ypjj.onEnterFrame=function(){…….},定義ypjj觸發(fā)器,持續(xù)調(diào)用{……}中的語句。sjkz++;每次自動加一。if(sjkz>zds){……}判斷如果sjkz>zds就執(zhí)行{……}中的語句。否則就跳過。sjkz=0;計數(shù)器歸零。co101= Random(0xffffff);取一個十六進制ffffff范圍內(nèi)的隨機數(shù)賦給變量co101,也就是取一個顏色代碼。ffco101.setRGB(co101);將顏色代碼傳遞給ffco101,也就是ypjj此時改變了顏色。

      (2)動態(tài)改變影片剪輯的顏色

      可使用ColorTransform 類調(diào)整顯示對象的顏色值??梢詫㈩伾{(diào)整或顏色轉(zhuǎn)換應(yīng)用于所有四種通道:紅色、綠色、藍色和Alpha 透明度。

      當(dāng) ColorTransform 對象應(yīng)用于顯示對象時,將按如下方法為每個顏色通道計算新值:

      ①新紅色值=(舊紅色值* redMultiplier) +redOffset

      ②新綠色值=(舊綠色值* greenMultiplier) +greenOffset

      ③新藍色值=(舊藍色值* blueMultiplier) +blueOffset

      ④新Alpha值=(舊Alpha值*alphaMultiplier) +alphaOffset

      如果計算后任何一個顏色通道值大于255,則該值將被設(shè)置為255。如果該值小于0,它將被設(shè)置為0。

      4.結(jié)束語

      ActionScript是Flash內(nèi)置的編程語言,用它為動畫編程,可以實現(xiàn)各種動畫特效、對影片的良好控制、強大的人機交互以及與網(wǎng)絡(luò)服務(wù)器的交互功能。

      參考文獻

      [1]曹麗華.Flash 動畫在課件制作中的應(yīng)用[J].吉林師范大學(xué)學(xué)報(自然科學(xué)版),2011,6.

      [2]崔建偉.Flash 在多媒體課件制作中的應(yīng)用[J].科技信息,2010(33).

      [3]李巧靈.Flash 課件中交互練習(xí)題的制作[J].電腦知識與技術(shù),2011,1.

      南汇区| 云霄县| 金溪县| 安岳县| 兴安县| 邯郸县| 观塘区| 九龙城区| 正蓝旗| 铅山县| 柳州市| 长宁县| 班戈县| 合水县| 汽车| 威宁| 怀柔区| 肇源县| 四子王旗| 南郑县| 阳高县| 迁安市| 汉阴县| 西畴县| 会泽县| 五指山市| 辉县市| 农安县| 西城区| 马山县| 张家川| 淳化县| 鹤峰县| 通辽市| 吉木乃县| 玛沁县| 蕉岭县| 安庆市| 扶余县| 小金县| 明水县|