a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 辦公 > Flash > 正文

Flash CS4來制作漂亮的氣泡動畫教程

2020-07-17 13:09:09
字體:
來源:轉載
供稿:網友

本教程主要用Flash CS4來制作漂亮的氣泡動畫教程,制作出來氣泡真的很好看,制作效果是采用代碼形式實現,覺得很不錯,轉發過來,感興趣的朋友可以一起來學習。

先看看效果圖:

詳細代碼:


復制代碼
代碼如下:
function ball(r:int):MovieClip {//自定義函數 ball,參數為 r,整數型,返回值為 MovieClip
var col:uint=0xffffff*Math.random();//聲明一個無符號整數型變量 col,獲取任意顏色
var sh:MovieClip=new MovieClip();//聲明一個影片剪輯類實例 sh
sh.graphics.beginGradientFill(GradientType.RADIAL,[0xffffff,col,col],[0.5,1,1],[0,200,255]);//在 sh 中設置漸變填充樣式(放射狀漸變,顏色,透明度,色塊位置)
sh.graphics.drawCircle(0,0,r);//在 sh 中畫圓(圓心坐標(0,0),半徑為參數r)
sh.graphics.endFill();//結束填充
return sh;//返回 sh
}
var ballArr:Array=[];//聲明一個空數組 ballArr
for (var i:int=0; i<10; i++) {//創建一個 for 循環,循環 10次
var balls:MovieClip=ball(Math.random()*20+20);//聲明一個影片剪輯類實例balls,調用函數 ball(參數r 半徑的值為 20-40 之間的隨機值)
addChild(balls);//把 balls添加到顯示列表
balls.x=Math.random()*(stage.stageWidth-balls.width)+balls.width/2;//balls 的 X 坐標
balls.y=Math.random()*(stage.stageHeight-balls.height)+balls.height/2;//balls 的 Y坐標,使它出現在舞臺的任意位置
balls.vx=Math.random()*2-1;//為 balls 設置自定義屬性 vx,數值為-1-1 之間的隨機數,表示 X 方向的速度
balls.vy=Math.random()*2-1;//為 balls 設置自定義屬性 vy,數值為-1-1 之間的隨機數,表示 Y 方向的速度
ballArr.push(balls);//把 balls 添加到數組 ballArr 中
}
addEventListener(Event.ENTER_FRAME,frame);//添加幀頻事件偵聽,調用函數 frame
function frame(e) {//定義幀頻事件函數 frame
for (var i:int=0; i<ballArr.length; i++) {//創建一個 for循環,循環次數為數組 ballArr 的元素數
var balls:MovieClip=ballArr[i];//聲明一個影片剪輯類實例 balls,獲取數組 ballArr 的元素
balls.x+=balls.vx;//balls的 X 坐標每幀增加balls.vx
balls.y+=balls.vy;//balls的 Y 坐標每幀增加balls.vy
if (balls.x<balls.width/2) {//如果balls 出了舞臺左邊緣
balls.x=balls.width/2;//balls 的 X坐標獲取balls 寬度的一半
balls.vx*=-1;//balls.vx 獲取它的相反數
}
if (balls.x>stage.stageWidth-balls.width/2) {//如果 alls 出了舞臺右邊緣
balls.x=stage.stageWidth-balls.width/2;//balls 的 X 坐標獲取場景寬度與 balls 寬度一半的差
balls.vx*=-1;//balls.vx 獲取它的相反數
}
if (balls.y<balls.height/2) {//如果 balls出了舞臺上邊緣
balls.y=balls.height/2;//balls 的 Y坐標獲取 balls 高度的一半
balls.vy*=-1;//balls.vy 獲取它的相反數
}
if (balls.y>stage.stageHeight-balls.height/2) {//如果 balls 出了舞臺下邊緣
balls.y=stage.stageHeight-balls.height/2;//balls 的 Y 坐標獲取舞臺高度與 balls 高度一半的差
balls.vy*=-1;//balls.vy 獲取它的相反數
}
}
for (var j:int=0; j<ballArr.length-1; j++) {//創建一個 for 循環,循環次數比數組 ballArr 元素數少 1
var ball0:MovieClip=ballArr[j];//聲明一個影片剪輯類實例 ball0,獲取數組 ballArr 的元素
for (var m:int=j+1; m<ballArr.length; m++) {//創建一個 for 循環,
var ball1:MovieClip=ballArr[m];//聲明一個影片剪輯類實例 ball1,獲取數組 ballArr 的元素
var dx:Number=ball1.x-ball0.x;//聲明一個數值型變量 dx,獲取
var dy:Number=ball1.y-ball0.y;//聲明一個數值型變量 dy,獲取
var jl:Number=Math.sqrt(dx*dx+dy*dy);//聲明一個數值型變量 jl,獲取小球的距離
var qj:Number=ball0.width/2+ball1.width/2;//聲明一個數值型變量獲取小球半徑之和
if (jl<=qj) {//如果 jl 小于等于 qj
var angle:Number=Math.atan2(dy,dx);//聲明一個數值型變量angle,獲取ball1 相對于 ball0 的角度
var tx:Number=ball0.x+Math.cos(angle)*qj*1.01;//聲明一個數值型變量 tx,獲取目標點的 X坐標
var ty:Number=ball0.y+Math.sin(angle)*qj*1.01;//聲明一個數值型變量 ty,獲取目標點的 Y坐標
ball0.vx=- (tx-ball1.x);//ball0 在X 方向的速度
ball0.vy=- (ty-ball1.y);//ball0 在Y 方向的速度
ball1.vx=(tx-ball1.x);//ball1 在 X方向的速度
ball1.vy=(ty-ball1.y);//ball1 在 Y方向的速度
}
}
}
}

教程結束,以上就是Flash CS4來制作漂亮的氣泡動畫過程,希望大家喜歡,并有所幫助!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 二区不卡 | 羞视频在线观看 | 最新黄色网页 | 亚洲男人av | 欧美日韩成人在线视频 | 中文字幕av亚洲精品一部二部 | 国产精品久久久久久久午夜片 | 欧美自拍视频 | 中文字幕一区在线观看视频 | 成人精品一区二区三区中文字幕 | 99这里只有精品视频 | 日韩精品视频在线观看网站 | 激情欧美一区 | 天堂精品一区二区三区 | 国产欧美日韩综合精品一区二区 | 一级视频在线观看 | 日本精品在线 | 两性午夜视频 | 亚洲国产91 | 在线区 | 操久久| 污网址在线观看 | 中文字幕日韩一区二区不卡 | 国外成人在线视频网站 | 午夜精品一区二区三区四区 | 一级黄色在线 | 亚洲欧美激情精品一区二区 | 欧美日韩精品免费观看视频 | 欧美色图在线观看 | 日韩欧美中文在线 | 婷婷av网站| 日韩欧美国产一区二区 | 国产精品久久久久久中文字 | 国产精品1区二区 | 国产私拍视频 | 精品国产黄a∨片高清在线 毛片国产 | 特黄视频 | 天天曰天天干 | 久久精品在线 | 欧美久久一级特黄毛片 | 久久久久久精 |