發新話題

互動式 Flash 5 放大鏡特效

互動式 Flash 5 放大鏡特效

互動式 Flash 5 放大鏡特效
Flash: http://www.hgjh.hlc.edu.tw/~drop/flateach/record/lens_d.swf
圖層結構關係:

繪圖技巧:
上圖中之「照片picture、照片」,二者的座標均需位於 (0,0)
動態控制(拖曳放大鏡,滑鼠座標圖像座標呈反向一對一關係)
        下載母檔:請按訪客無法瀏覽此圖片或連結,請先 註冊登入會員 下載空白母檔,並存在「我的文件」夾中。然後打開它。

        觀念構思:
          ■按鈕只能「一個指令、一個動作」,不能產生連續的動作。
          ■希望利用「主場景」連續播放的影格,能替我作連續運作的「經紀人」。
          ■希望「圖像座標」能夠與「滑鼠座標」反向相對應。

        預置元件:
          ■此時你如打開右下角的「 圖庫」也可以看到以下說明。
          影片元件:母檔中「照片,照片_含遮色片」為影片元件。
          其中如果你想作成自已的放大鏡特效,雙擊「照片」兩下由此進入去改圖即可。

        影片命名:
          ■請在舞台左上角「鏡片」上按右鍵選「面板 → 實體」。在面板中「名稱」欄位填入「lens」。(這是我們給鏡片取的名字,以便程式呼叫它)
          ■請在舞台左上角「鏡片」上(左鍵)雙擊,進入此鏡片,進入後(左鍵)輕觸在舞台中變亮的文字塊。在實體面板中「名稱」欄位填入「picture」。(把這個文字假想成是張圖片)

        全部指令:主場影「指令」圖層的第一影格中,預定完成下列指令:
lens._x = _xmouse;
lens._y = _ymouse;
magnify = 1.5;
lens.picture._xscale = 100 * magnify;
lens.picture._yscale = 100 * magnify;
lens.picture._x = -_xmouse * magnify;
lens.picture._y = -_ymouse * magnify;

        鏡片追滑鼠:
          ■在主場影「指令」圖層的第一影格(左鍵)雙擊,在跳出的指令面板上按「+ 」然後選「動作 → evaluate」, 此時面板右方會出現一「;」空行,你可在下方「表示式」欄位填入下列指令
          lens._x = _xmouse
          //其中 lens._x 是鏡片的橫座標,_xmouse 是滑鼠游標的橫座標。(以 px 為單位)
          //這句指令是「讓舞台上鏡片跟著滑鼠游標而移動(橫座標)」。
          ■再在指令面板上按「+ 」然後選「動作 → evaluate」, 此時面板右方會出現一「;」空行,你可在下方「表示式」欄位填入下列指令
          lens._y = _ymouse
          //其中 lens._y 是鏡片的縱座標,_ymouse 是滑鼠游標的縱座標。(以 px 為單位)
          //這句指令是「讓舞台上鏡片跟著滑鼠游標而移動(縱座標)」。
        放大倍率:
          ■再在指令面板上按「+ 」然後選「動作 → evaluate」, 此時面板右方會出現一「;」空行,你可在下方「表示式」欄位填入下列指令<br>
          magnify = 1.5
          //其中 magnify 是自設變數,其後的 1.5 可隨意改變。此變數會在稍後運算中採用。
          //這句指令是「鏡片內的影像放大 1.5 倍」。
        鏡內像放大:
          ■再在指令面板上按「+ 」然後選「動作 → evaluate」, 此時面板右方會出現一「;」空行,你可在下方「表示式」欄位填入下列指令
          lens.picture._xscale = 100 * magnify
          //其中 lens.picture._xscale 是鏡內像的橫向尺寸(100 為正常尺寸)。
          //這句指令是「讓鏡片內影像橫向放大 magnify 倍」。
          ■再在指令面板上按「+ 」然後選「動作 → evaluate」, 此時面板右方會出現一「;」空行,你可在下方「表示式」欄位填入下列指令
          lens.picture._yscale = 100 * magnify
          //其中 lens.picture._yscale 是鏡內像的縱向尺寸(100 為正常尺寸)。
          //這句指令是「讓鏡片內影像縱向放大 magnify 倍」。

        鏡內像反方向運動:
          ■再在指令面板上按「+ 」然後選「動作 → evaluate」, 此時面板右方會出現一「;」空行,你可在下方「表示式」欄位填入下列指令
          lens.picture._x = -_xmouse * magnify
          //其中 lens.picture._x 是鏡內像的橫座標,-_xmouse * magnify 則是滑鼠座標的 magnify 倍並反方向。
          //這句指令是「讓鏡片內影像與鏡片反方向運動」。
          ■再在指令面板上按「+ 」然後選「動作 → evaluate」, 此時面板右方會出現一「;」空行,你可在下方「表示式」欄位填入下列指令
          lens.picture._y = -_ymouse * magnify
          //其中 lens.picture._y 是鏡內像的縱座標,-_ymouse * magnify 則是滑鼠座標的 magnify 倍並反方向。
          //這句指令是「讓鏡片內影像與鏡片反方向運動」。
        觀察成果</font>:按 F12 看看指令是否生效。


訪客無法瀏覽此圖片或連結,請先 註冊登入會員

這是可調整倍率的放大鏡特效
Flash: http://www.hgjh.hlc.edu.tw/~drop/flateach/record/lens_z.swf

訪客無法瀏覽此圖片或連結,請先 註冊登入會員
訪客無法瀏覽此圖片或連結,請先 註冊登入會員
訪客無法瀏覽此圖片或連結,請先 註冊登入會員
訪客無法瀏覽此圖片或連結,請先 註冊登入會員
訪客無法瀏覽此圖片或連結,請先 註冊登入會員

[ 本帖最後由 蔡逸竹 於 2006-10-31 20:40 編輯 ]

TOP

發新話題

本站所有圖文均屬網友發表,僅代表作者的觀點與本站無關,如有侵權請通知版主會盡快刪除。