日本a在线观看_久久久三区_久久99精品久久久久久国产越南_在线观看中文字幕av_国产精品久久久久久久久久东京_a免费视频

PS設計教程網歡迎你!

Flash CS4制作切換放大菜單效果(2)

文章來源于 動畫設計與制作208例,感謝作者 望月狼 給我們帶來經精彩的文章!
設計教程/設計教程/Flash教程2009-10-13
(2)返回到場景1,新建一個AS圖層,然后在第1幀輸入代碼。本例用到緩沖原理,所以要先導入Tweener類;第3~6行代碼是經常使用到的一種編程方式,首先創建一個容器來存儲所有的對象,便于統一控制,然后使用for()循環語

(2)返回到“場景1”,新建一個AS圖層,然后在第1幀輸入代碼。本例用到緩沖原理,所以要先導入Tweener類;第3~6行代碼是經常使用到的一種編程方式,首先創建一個容器來存儲所有的對象,便于統一控制,然后使用for()循環語句創建12個按鈕元件類對象(如第15~20行代碼)。

AS3代碼

import caurina.transitions.Tweener;//導入Tweener類   
//創建一個容器,用于存儲本例中的所有創建的對象   
var container_mc:Sprite = new Sprite();   
container_mc.x = stage.stageWidth/2; //定位在舞臺中心   
container_mc.y = stage.stageHeight/2;   
addChild(container_mc);   
  
var angle:uint=0; //角度   
var R:Number = 100; //圓的半徑   
var _length:uint = 12; //按鈕個數   
var newX = 0; //被單擊的按鈕X坐標   
var newY = 0; //被單擊的按鈕Y坐標   
for (var i=0; i<=_length; i++) {   
  
    var _mc:Sprite = new button();   
    _mc.buttonMode = true;   
    _mc.name = "mc" + i;   
  
       
    _mc.addEventListener(MouseEvent.CLICK,clickHandler);   
    container_mc.addChild(_mc);   
  
    if (i == _length) {   
        _mc.x = newX;   
        _mc.y = newY;   
        //指定此對象禁止接收鼠標消息   
        _mc.mouseEnabled = false;   
        Tweener.addTween(_mc, {scaleX:2, scaleY:2, time:1, transition:"easeInOutQuint"});   
    } else {   
        angle += 30;   
        var radians:Number = angle * Math.PI / 180;   
  
        var X:Number = Math.cos(radians) * R;   
        var Y:Number = Math.sin(radians) * R;   
  
        _mc.x = X;   
        _mc.y = Y;   
    }

(3)第22~29行代碼是利用三角函數來進行精確定位,首先通過for()循環創建_length個按鈕對象,然后進行角度上的遞增30(angle += 30),在已知半徑和角度后,便可以通過三角函數來求得各不同角度的按鈕坐標位置,其主要原理如圖9-8所示。

Flash CS4制作切換放大菜單效果

圖9-8 三角函數原理

(4)創建后的按鈕排序原理圖和發布影片后的效果如圖9-9和圖9-10所示,其中原理圖中的坐標原點為container_mc容器的原點位置。

Flash CS4制作切換放大菜單效果

圖9-9 按鈕排序原理圖

Flash CS4制作切換放大菜單效果

圖9-10 發布效果

(5)下面進一步判斷和定位按鈕的位置,第23~29行代碼,判斷i的值是否等于按鈕的總個數,如果等于就將按鈕的坐標設置為(newX,newY),即(0,0),也就是將按鈕位置設置在container_mc容器的原點位置,并使用Tweener類的addTween()方法將其寬/高縮放比例(scaleX, scaleY)都設置為2,影片的發布效果如圖9-11所示。

AS3代碼

import caurina.transitions.Tweener;//導入Tweener類   
//創建一個容器,用于存儲本例中的所有創建的對象   
var container_mc:Sprite = new Sprite();   
container_mc.x = stage.stageWidth/2; //定位在舞臺中心   
container_mc.y = stage.stageHeight/2;   
addChild(container_mc);   
  
var angle:uint=0; //角度   
var R:Number = 100; //圓的半徑   
var _length:uint = 12; //按鈕個數   
var newX = 0; //被單擊的按鈕X坐標   
var newY = 0; //被單擊的按鈕Y坐標   
for (var i=0; i<=_length; i++) {   
  
    var _mc:Sprite = new button();   
    _mc.buttonMode = true;   
    _mc.name = "mc" + i;   
  
       
    _mc.addEventListener(MouseEvent.CLICK,clickHandler);   
    container_mc.addChild(_mc);   
  
    if (i == _length) {   
        _mc.x = newX;   
        _mc.y = newY;   
        //指定此對象禁止接收鼠標消息   
        _mc.mouseEnabled = false;   
        Tweener.addTween(_mc, {scaleX:2, scaleY:2, time:1, transition:"easeInOutQuint"});   
    } else {   
        angle += 30;   
        var radians:Number = angle * Math.PI / 180;   
  
        var X:Number = Math.cos(radians) * R;   
        var Y:Number = Math.sin(radians) * R;   
  
        _mc.x = X;   
        _mc.y = Y;   
    }

Flash CS4制作切換放大菜單效果

圖9-11 發布效果

版權所有PS設計教程網公安備案:蘇公網安備 32058302001023號工信部備案:滬ICP備09005587號
aaa
主站蜘蛛池模板: 久久精品伊人网 | 91免费高清视频 | 欧美性黄| 国产免费最爽的乱淫视频a 毛片国产 | 蜜桃网站在线 | 欧美城网站地址 | 全黄裸片武则天艳史 | 国产欧美在线一区二区三区 | 男女羞羞视频 | 欧美日韩成人一区二区 | 久久欧美亚洲另类专区91大神 | 午夜影视一区二区 | 亚洲电影免费观看国语版 | 手机在线看片国产 | 国产精品一区二区x88av | 欧美亚洲黄色片 | 亚洲第一黄色网 | 欧美特一级 | 成人羞羞在线观看网站 | 污污短视频 | 国产毛片网 | 国产精品一区二区三区99 | 狠狠撸电影 | 99精品国产视频 | 羞羞的视频在线 | 欧美成人精品欧美一级 | 久久影院午夜 | 日本在线播放一区二区 | 欧美日韩1区2区3区 黄片毛片一级 | 久久精品中文字幕 | 精品在线观看一区 | 激情福利视频 | 国产一级毛片高清视频 | 欧美成视频在线观看 | 国产激情网 | 91精品国产92久久久久 | 国产理论视频在线观看 | 日韩精品一区二区三区中文 | 黄色的视频免费观看 | 国产不卡av在线 | 久久久久久久免费看 |