国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 辦公 > Flash > 正文

Flash AS教程:旋轉立方體

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

好,下面開始:

stop();
//這個stop是讓FLASH播放在這一幀停下來,但對代碼的運行沒有影響~其實不用也沒關系
angle=-0.03;
dot_x=Stage.width/2;
dot_y=Stage.height/2;
p=70;
d=300;
//先初始化一下變量~angle是立方體每次轉過的角度,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);
//這三個數組儲存了立方體八個點的實際坐標
tempx=new Array(8);
tempy=new Array(8);
//這兩個數組用來存儲立方體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);
//這個是用來計算立方體在轉動時八個點的坐標
sx=temp_x;
sy=sy;
sz=temp_z;
//要這樣賦值一下~否則立方體會越轉越長
tempx=(sx/(sz d))*d dot_x;
tempy=(sy/(sz d))*d dot_y;
//這個是用來將立方體的實際坐標轉化成屏幕的坐標,不懂的可以參考一下計算機圖形學的書

}
_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");
//上面的這一堆東西是用來把算出來的立方體的點用線連起來~其實可以優化一下的
updateAfterEvent();
//更新一下
}
setInterval(r,5);
//每隔5毫秒運行一次函數r()

終于寫完了哈

" /> 寫的不好~請見諒`~再發一次效果,嘿嘿

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 怀安县| 土默特左旗| 仙游县| 喀喇沁旗| 观塘区| 宁武县| 蛟河市| 丹棱县| 宁安市| 汉阴县| 益阳市| 石泉县| 绥阳县| 普安县| 芦山县| 石嘴山市| 伊宁市| 皋兰县| 五大连池市| 房山区| 裕民县| 镶黄旗| 大足县| 西乌珠穆沁旗| 滁州市| 银川市| 象山县| 五指山市| 乐东| 马关县| 南投县| 大关县| 叙永县| 屏山县| 苍山县| 玛纳斯县| 台山市| 太谷县| 淅川县| 牟定县| 名山县|