欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Flash AS 實(shí)例進(jìn)階 制作時(shí)鐘實(shí)現(xiàn)代碼

  發(fā)布時(shí)間:2013-03-13 23:29:12   作者:佚名   我要評論
用 Flash 制作的時(shí)鐘基本有兩種形式,數(shù)字型和指針型,此外也有與眾不同的,大成校長還作過語音報(bào)時(shí)的,這里介紹的是應(yīng)用最普遍的指針型時(shí)鐘

  源文件下載

  >點(diǎn)擊查看動(dòng)畫效果<實(shí)例2-6時(shí)鐘

  基本思路

 ?、?作 3 個(gè)指針 MC ,分別按不同的速度旋轉(zhuǎn),實(shí)現(xiàn)時(shí)鐘效果。

 ?、谌?要拖拽效果,則要把 12 個(gè)數(shù)字分別作成 MC 。然后作鼠標(biāo)跟隨。

新知識(shí)點(diǎn)

  ① Date 類的方法的應(yīng)用:


復(fù)制代碼
代碼如下:

MY Date= new Date()// 構(gòu)造一個(gè)新的 Date 對象
Date.getHours()// 按照本地時(shí)間返回小時(shí)值。
Date.getMinutes()// 按照本地時(shí)間返回分鐘值。
Date.getSeconds()// 按照本地時(shí)間返回秒數(shù)。
Date.getMilliseconds()// 按照本地時(shí)間返回毫秒值。


②一種緩沖公式應(yīng)用

  實(shí)例說明

  ①此時(shí)鐘實(shí)例是由數(shù)字和指針共 15 個(gè) MC 組成,并又是嵌套在 MC “ biao” 中,各 MC 的注冊點(diǎn)一定要確定準(zhǔn)確,

  ② 分別將 MC “ biao” 放在主時(shí)間軸的 3 個(gè)幀上,為各幀上的 MC 編寫不同的腳本。

 ?、?設(shè)一按鈕用于各幀之間的跳轉(zhuǎn)

編寫動(dòng)作腳本

  ① 在第 1 幀到第 2 幀的 MC 上輸入:

復(fù)制代碼
代碼如下:

onClipEvent (enterFrame) {// 以影片剪輯幀頻不斷觸發(fā)的動(dòng)作
   s = new Date();// 創(chuàng)健日期對象
   Hours = s.getHours();// 讀取系統(tǒng)時(shí)間 - 時(shí)
   if (12<Hours) {
     Hours = Hours-12;
   }// 把 24 小時(shí)制轉(zhuǎn)換為 12 小時(shí)制
   this.b13._rotation = ((Hours*30)+(s.getMinutes()/2)); // 把時(shí)和分轉(zhuǎn)換為旋轉(zhuǎn)角度
    this.b14._rotation = (6*s.getMinutes()); // 把獲取的系統(tǒng)時(shí)間分轉(zhuǎn)換為旋轉(zhuǎn)角度
    this.b15._rotation = (6*s.getSeconds()); // 把獲取的系統(tǒng)時(shí)間秒轉(zhuǎn)換為旋轉(zhuǎn)角度
   }

 ?、?在第 3 幀的 MC 上輸入:

復(fù)制代碼
代碼如下:

onClipEvent (load) {變量初始化
for (i=1; i<16; i++) {
this["b"+i].xl = 0;
this["b"+i].yl = 0;
}
}
onClipEvent (enterFrame) {
   s = new Date();
   Hours = s.getHours();
   if (12<Hours) {
     Hours = Hours-12;
   }
   this.b13._rotation = ((Hours*30)+(s.getMinutes()/2));
   this.b14._rotation = (6*s.getMinutes());
   this.b15._rotation = (6*s.getSeconds());
   this.b1._x = _xmouse;
   this.b1._y = _ymouse+120; // 讓第一個(gè) MC 跟隨鼠標(biāo)移動(dòng) ,并要MC低于鼠標(biāo)120個(gè)像素。
   for (i=2; i<=15; i++) {
      this["b"+i].xl = (this["b"+(i-1)]._x-this["b"+i]._x)/2+this["b"+i].xl*0.3;// 變量 bi.xl 在趨于 0 的過程中不斷被賦新值
      this["b"+i].yl = (this["b"+(i-1)]._y-this["b"+i]._y)/2+this["b"+i].yl*0.3;// 變量 bi.yl 在趨于 0 的過程中不斷被賦新值
     this["b"+i]._x += this["b"+i].xl;//MC “ bi ”的坐標(biāo) x 值
     this["b"+i]._y += this["b"+i].yl;//MC “ bi ”的坐標(biāo) y 值
    }
   }

        ③ 在第 1 幀上輸入:

stop();

   ④ 在第 2 幀上輸入:
biao.startDrag(true);

   ⑤在第 1 幀到第 2 幀的按鈕上輸入:
on (release) {   nextFrame();}

 ?、菰诘?3 幀的按鈕上輸入:

on (release) {   gotoAndStop(1);}
要點(diǎn)分析

 ?、?時(shí)針: this.b13._rotation = ((Hours*30)+(s.getMinutes()/2))

  首先看 ((Hours*30) ,因?yàn)樽咭恢?12 小時(shí)是 360 度,那每小時(shí)就是走 30 度,用本地時(shí)間的小時(shí)數(shù)乘于 30 就是指針指向的度數(shù)。,如 3 點(diǎn)就是 3*30 ,指針在 90 度位置,但這樣只能是按小時(shí)發(fā)生動(dòng)作,要顯示中間的指針變化還需加上 (s.getMinutes()/2) ,這個(gè)表達(dá)式是計(jì)算的當(dāng)前分鐘乘于每分鐘在一個(gè)小時(shí)刻度內(nèi)走的度數(shù)( 0.5 度),這兩個(gè)表達(dá)式相加就是以小時(shí)和分鐘計(jì)算出的時(shí)針旋轉(zhuǎn)度數(shù)。

  ② 緩沖公式: this["b"+i].xl = (this["b"+(i-1)]._x-this["b"+i]._x)/2+this["b"+i].xl*0.3;

  為便于觀看首先把數(shù)值具體化: b2.xl=( b1._x-b2._x)/2+b2.xl*0.3; 其中的 ( b1._x-b2._x)/2 ,我們在導(dǎo)航條那課已經(jīng)用過類似的方法,這里是取兩個(gè) MC 坐標(biāo)值的差的二分之一,這個(gè)表達(dá)式的結(jié)果在不斷的由大到小直至為 0 ,其中的 b2.xl*0.3 , 是有意增加的偏差值, 有叫抖動(dòng)率的,也是由大到小變化最后到 0 ,這兩個(gè)表達(dá)式計(jì)算的結(jié)果賦給變量 b2.xl ,有了這樣的公式,鼠標(biāo)跟隨就會(huì)有延時(shí)和抖動(dòng)效果。

小結(jié)

  本講學(xué)習(xí)的目的是掌握時(shí)鐘的運(yùn)動(dòng)原理,此外還學(xué)習(xí) 一種緩沖公式的運(yùn)用,也是很有實(shí)用價(jià)值的內(nèi)容,希望課下能用數(shù)字代入加深理解。

課后練習(xí)

  不要秒針跳躍式旋轉(zhuǎn),而要平緩連貫地旋轉(zhuǎn),范例效果:

  >點(diǎn)擊查看動(dòng)畫效果<練習(xí)2-6   

  >點(diǎn)擊查看動(dòng)畫效果<練習(xí)2-6-2

  查看全套"Flash AS 實(shí)例進(jìn)階教程"

相關(guān)文章

  • flash cs6鼠標(biāo)跟隨效果實(shí)現(xiàn)代碼分享

    flash cs6想要實(shí)現(xiàn)鼠標(biāo)跟隨效果?該怎么制作呢?今天我們就來看看使用as2.0實(shí)現(xiàn)鼠標(biāo)跟隨效果的教程,需要的朋友可以參考下
    2019-05-19
  • Flash cs6怎么使用代碼輸入中英文文本?

    Flash cs6怎么使用代碼輸入中英文文本?Flash cs6中可以使用文字工具直接輸入文本,也可以使用代碼來輸入文本,該怎么使用代碼輸入文本呢?請看下文詳細(xì)的教程,需要的朋友
    2018-03-11
  • flash as3.0怎么定義抽象類和抽象?

    flash as3.0抽象類怎么定義? as3.0中有很多抽象類,該怎么定義抽象類和抽象方法呢?下面我們就來看看簡單的例子,需要的朋友可以參考下http://www.dbjr.com.cn/softs/408402.
    2018-02-28
  • flash cs6中怎么使用ActionScript3.0?

    flash cs6中怎么使用ActionScript3.0?flash cs6中想要使用ActionScript3.0功能,該怎么使用呢?下面我們就來看看詳細(xì)的教程,需要的朋友可以參考下
    2018-01-25
  • Flash中怎么實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊決定圖像位置?

    本教程給大家分享一個(gè)Flash小教程,教大家在Flash CS6中怎么實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊決定圖像位置?方法很簡單,感興趣的朋友歡迎前來一起分享學(xué)習(xí)
    2018-01-12
  • Flash中如何用代碼將圖片放在自己想要的舞臺(tái)位置?

    本教程教腳本之家的ActionScript教程學(xué)習(xí)者在Flash中如何用代碼將圖片放在自己想要的舞臺(tái)位置,教程講解的詳細(xì),感興趣的朋友歡迎前來分享學(xué)習(xí)
    2017-11-20
  • 在Flash CS6中使用with函數(shù)繪制背景圖教程

    本教程教腳本之家的ActionScript教程學(xué)習(xí)者如何在Flash CS6中使用with函數(shù)繪制背景圖?教程一步步講解的挺詳細(xì),方法也不難,非常適合Flash新手入門學(xué)習(xí)
    2017-11-18
  • Flash怎么設(shè)置元件坐標(biāo)?flash使用代碼設(shè)置元件的坐標(biāo)的教程

    Flash怎么設(shè)置元件坐標(biāo)?flash中導(dǎo)如的元件需要添加坐標(biāo),該怎么定位元件坐標(biāo)呢?下面我們就來看看flash使用代碼設(shè)置元件的坐標(biāo)的教程,需要的朋友可以參考下
    2017-10-11
  • Flash怎么制作來回?fù)u擺的花朵的動(dòng)畫?

    Flash怎么制作來回?fù)u擺的花朵的動(dòng)畫?Flash中想要給花朵制作一段搖擺的動(dòng)畫效果,該怎么制作呢?下面我們就來看看詳細(xì)的教程,很簡單,需要的朋友可以參考下
    2017-05-23
  • Flash怎么制作流動(dòng)七彩色的文字?

    Flash怎么制作流動(dòng)七彩色的文字?想要讓文字動(dòng)起來,該怎么使用flash給文字制作一個(gè)流動(dòng)七彩色的動(dòng)畫呢?下面我們就來看看詳細(xì)的教程,需要的朋友可以參考下
    2017-04-23

最新評論