Flash AS打造轉(zhuǎn)動3D小方塊視覺特效_Flash教程
推薦:帶AS的圖片環(huán)繞旋轉(zhuǎn)效果制作方法本文由原創(chuàng),轉(zhuǎn)載請保留此信息!好~現(xiàn)在開始咯~新建FLASH文件~修改-》文檔,把文檔的背景色改成黑色~CTRLF8新建元件【text】~在元件的幀上放13個要
Flash教程,用Flash AS打造轉(zhuǎn)動3D小方塊視覺特效
演示:
其實也不算什么教程,只是代碼的解釋~我盡量寫的具體一些~
其實這個效果只有這些代碼而已~把代碼貼到第一幀就可以了~
好,下面開始:
stop();
//這個stop是讓FLASH播放在這一幀停下來,但對代碼的運行沒有影響~其實不用也沒關(guān)系
angle=-0.03;
dot_x=Stage.width/2;
dot_y=Stage.height/2;
p=70;
d=300;
//先初始化一下變量~angle是立方體每次轉(zhuǎn)過的角度,dot_x和dot_y定義了空間的原點,p是立方體邊長的一半,d是眼
//睛距離屏幕的像素
sx=new Array(-p,p,p,-p,-p,p,p,-p);
sy=new Array(-p,-p,-p,-p,p,p,p,p);
sz=new Array(-p,-p,p,p,-p,-p,p,p);
//這三個數(shù)組儲存了立方體八個點的實際坐標
tempx=new Array(8);
tempy=new Array(8);
//這兩個數(shù)組用來存儲立方體8個點在屏幕上的坐標
function r(){
for(i=0;i temp_x=sx*Math.cos(angle)-sz*Math.sin(angle);
temp_z=sx*Math.sin(angle) sz*Math.cos(angle);
//這個是用來計算立方體在轉(zhuǎn)動時八個點的坐標
sx=temp_x;
sy=sy;
sz=temp_z;
//要這樣賦值一下~否則立方體會越轉(zhuǎn)越長
tempx=(sx/(sz d))*d dot_x;
tempy=(sy/(sz d))*d dot_y;
//這個是用來將立方體的實際坐標轉(zhuǎn)化成屏幕的坐標,不懂的可以參考一下計算機圖形學的書
}
_root.createEmptyMovieClip("lines", 1);
lines.lineStyle(1, 11111111, 100);
lines.moveTo(tempx[0],tempy[0]);
lines.lineTo(tempx[1],tempy[1]);
lines.lineTo(tempx[2],tempy[2]);
lines.lineTo(tempx[3],tempy[3]);
lines.lineTo(tempx[0],tempy[0]);
lines.lineTo(tempx[4],tempy[4]);
lines.lineTo(tempx[5],tempy[5]);
lines.lineTo(tempx[6],tempy[6]);
lines.lineTo(tempx[7],tempy[7]);
lines.lineTo(tempx[4],tempy[4]);
lines.moveTo(tempx[1],tempy[1]);
lines.lineTo(tempx[5],tempy[5]);
lines.moveTo(tempx[2],tempy[2]);
lines.lineTo(tempx[6],tempy[6]);
lines.moveTo(tempx[3],tempy[3]);
lines.lineTo(tempx[7],tempy[7]);
_root.removeMovieClip("lines");
//上面的這一堆東西是用來把算出來的立方體的點用線連起來~其實可以優(yōu)化一下的
updateAfterEvent();
//更新一下
}
setInterval(r,5);
//每隔5毫秒運行一次函數(shù)r
終于寫完了哈
" /> 寫的不好~請見諒`~再發(fā)一次效果,嘿嘿
分享:通過實例學習Flash AS3.0:案例五首先聲明:本人大菜鳥一個,剛接觸AS3不久,許多理念還沒來得及灌輸,這些case都是從網(wǎng)上down的,但因為解說是英文的,不利我們學習,我就充當一個translater
- 相關(guān)鏈接:
- 教程說明:
Flash教程-Flash AS打造轉(zhuǎn)動3D小方塊視覺特效
。