国产乱视频网站_久久亚洲一区二区三区四区_免费高清一级毛片_国产精品电影_国产精品乱码一区二区三区_美女天堂网

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
主站蜘蛛池模板: 在线免费精品视频 | 国产一区二区精品在线观看 | 国产精品久久久久久久久久99 | 日日干日日操 | 欧美三级电影在线观看 | 日韩国产欧美一区 | 日韩手机电影 | 免费的靠逼视频 | 欧美日色| 五月天婷婷综合 | 国产精品色婷婷久久58 | 欧美日韩国语 | 久久亚洲精品中文字幕蜜潮电影 | 中文字幕日韩一区二区不卡 | 国产激情免费 | www.久久.com| 欧美一区二区免费 | 日韩欧美三级 | 久草院线| 成人免费看片 | 国产精品27页 | 国产精品视频一二 | 2019天天操| 成人精品国产免费网站 | 久久久久久久一区二区三区 | 呦呦精品 | 国产精品久久久久9999鸭 | 久久黄色网 | 91丁香 | 欧美视频在线免费看 | 久久不射电影网 | 羞羞视频在线播放 | 中文字幕天天操 | 欧美国产日韩一区二区三区 | 成人国产精品久久久 | 久久久一区二区 | 欧美一区二区三区黄色 | 国产不卡视频在线观看 | 国产精品一区二区三区免费 | 日本特黄特色aaa大片免费 | 在线免费av观看 |