2001.8.6 花蓮縣立 花崗國中 校內同仁暑期 Flash 5 練功房  回首頁主選單

圖層結構關係:

繪圖技巧:
上圖中之「照片picture、照片」,二者的座標均需位於 (0,0)
動態控制(拖曳放大鏡,滑鼠座標圖像座標呈反向一對一關係)
  1. 下載母檔:請按此處下載空白母檔,並存在「我的文件」夾中。然後打開它。
  2. 觀念構思
    ■按鈕只能「一個指令、一個動作」,不能產生連續的動作。
    ■希望利用「主場景」連續播放的影格,能替我作連續運作的「經紀人」。
    ■希望「圖像座標」能夠與「滑鼠座標」反向相對應。
  3. 預置元件
    ■此時你如打開右下角的「 圖庫」也可以看到以下說明。
    影片元件:母檔中「照片,照片_含遮色片」為影片元件。
    其中如果你想作成自已的放大鏡特效,雙擊「照片」兩下由此進入去改圖即可。
  4. 影片命名
    ■請在舞台左上角「鏡片」上按右鍵選「面板 → 實體」。在面板中「名稱」欄位填入「lens」。(這是我們給鏡片取的名字,以便程式呼叫它)
    ■請在舞台左上角「鏡片」上(左鍵)雙擊,進入此鏡片,進入後(左鍵)輕觸在舞台中變亮的文字塊。在實體面板中「名稱」欄位填入「picture」。(把這個文字假想成是張圖片)
  5. 全部指令:主場影「指令」圖層的第一影格中,預定完成下列指令:
    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;
  6. 鏡片追滑鼠
    ■在主場影「指令」圖層的第一影格(左鍵)雙擊,在跳出的指令面板上按「+ 」然後選「動作 → evaluate」, 此時面板右方會出現一「;」空行,你可在下方「表示式」欄位填入下列指令
    lens._x = _xmouse
    //其中 lens._x 是鏡片的橫座標,_xmouse 是滑鼠游標的橫座標。(以 px 為單位)
    //這句指令是「讓舞台上鏡片跟著滑鼠游標而移動(橫座標)」。
    ■再在指令面板上按「+ 」然後選「動作 → evaluate」, 此時面板右方會出現一「;」空行,你可在下方「表示式」欄位填入下列指令
    lens._y = _ymouse
    //其中 lens._y 是鏡片的縱座標,_ymouse 是滑鼠游標的縱座標。(以 px 為單位)
    //這句指令是「讓舞台上鏡片跟著滑鼠游標而移動(縱座標)」。
  7. 放大倍率
    ■再在指令面板上按「+ 」然後選「動作 → evaluate」, 此時面板右方會出現一「;」空行,你可在下方「表示式」欄位填入下列指令
    magnify = 1.5
    //其中 magnify 是自設變數,其後的 1.5 可隨意改變。此變數會在稍後運算中採用。
    //這句指令是「鏡片內的影像放大 1.5 倍」。
  8. 鏡內像放大
    ■再在指令面板上按「+ 」然後選「動作 → evaluate」, 此時面板右方會出現一「;」空行,你可在下方「表示式」欄位填入下列指令
    lens.picture._xscale = 100 * magnify
    //其中 lens.picture._xscale 是鏡內像的橫向尺寸(100 為正常尺寸)。
    //這句指令是「讓鏡片內影像橫向放大 magnify 倍」。
    ■再在指令面板上按「+ 」然後選「動作 → evaluate」, 此時面板右方會出現一「;」空行,你可在下方「表示式」欄位填入下列指令
    lens.picture._yscale = 100 * magnify
    //其中 lens.picture._yscale 是鏡內像的縱向尺寸(100 為正常尺寸)。
    //這句指令是「讓鏡片內影像縱向放大 magnify 倍」。
  9. 鏡內像反方向運動
    ■再在指令面板上按「+ 」然後選「動作 → evaluate」, 此時面板右方會出現一「;」空行,你可在下方「表示式」欄位填入下列指令
    lens.picture._x = -_xmouse * magnify
    //其中 lens.picture._x 是鏡內像的橫座標,-_xmouse * magnify 則是滑鼠座標的 magnify 倍並反方向。
    //這句指令是「讓鏡片內影像與鏡片反方向運動」。
    ■再在指令面板上按「+ 」然後選「動作 → evaluate」, 此時面板右方會出現一「;」空行,你可在下方「表示式」欄位填入下列指令
    lens.picture._y = -_ymouse * magnify
    //其中 lens.picture._y 是鏡內像的縱座標,-_ymouse * magnify 則是滑鼠座標的 magnify 倍並反方向。
    //這句指令是「讓鏡片內影像與鏡片反方向運動」。
  10. 觀察成果:按 F12 看看指令是否生效。

(完成指令的) 原始檔 (內附說明)

這是可調整倍率的放大鏡特效

原始檔
可調尺寸版onClipEvent 版
function 版陣列版prototype 版


道場
本校電腦教室 B
總教頭
王建忍老師 熱情義助
工程師
黃清順、陳俊甫老師 鼎力襄贊
助教
謝盛智、江梅英老師 熱情指導
主辦單位
花崗國中教師會
彙辦
教師會理事 教務處 劉樞遠 主任
版權所有
王建忍 Copyright (c) 1999-2014 by Edson Wang. All rights reserved.