日本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
主站蜘蛛池模板: 国产精品久久久久久238 | 精品久久久久久综合日本 | 黄色片网站在线免费观看 | 成人羞羞在线观看网站 | 红桃一区 | 91精品国产乱码久久久久 | 看黄在线| 国产女同疯狂激烈互摸 | 日本免费一区二区三区四区 | 亚州精品天堂中文字幕 | 羞羞电影在线观看 | 免费毛片随便看 | 久久久久久久久久久久久久久久久久 | 免费中文视频 | 美女久久久久久久久 | 2021免费日韩视频网 | 茄子福利视频 | 91久久一区 | 亚洲啪 | 日韩黄色一级视频 | 深夜小视频在线观看 | 中文字幕欧美亚洲 | 欧美1 | 日韩欧美电影一区二区三区 | 国产永久免费观看 | 欧美三级日本三级少妇99 | 成人三级电影网站 | 久久久午夜电影 | 在线成人免费观看视频 | 国产精品免费麻豆入口 | 国产成人精品一区二区三区电影 | 欧美国产一区二区三区 | 黄色一级片免费在线观看 | 在线免费观看毛片视频 | 国产成人免费精品 | 热99热| 免费a视频在线观看 | 久久精品中文字幕一区二区三区 | 午夜天堂在线 | 久久99精品久久久久久秒播放器 | 欧美亚成人 |