当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > Flash教程:纯AS打造3d小方块【代码解释】

Flash动画制作
Flash5键盘鼠标应用(二)
Freehand和Flash的结合应用(4)
Flash5 有声音的三眼狼(二)
Freehand和Flash的结合应用(7)
Freehand和Flash的结合应用(10)
Freehand和Flash的结合应用(12)
Flash5 位移操作(二)
Flash5制作水波倒影效果(二)
Flash5任意两点间随机画线(三)
Flash 神奇遮罩之原理篇(3)
Flash 神奇遮罩之动态篇
Flash 神奇遮罩之图片篇(1)
Flash MX 视频导入功能详解(5)
利用Flash MX模板制作XML动态菜单(1)
用动作脚本动态创建和控制文本框 (6)
FW MX和Flash MX的亲密合作(2)
FW MX和Flash MX的亲密合作(5)
Flash中音量和左右声道平衡的控制(2)
Flash MX的AS绘图和时间控制 下
Flash5 有声音的三眼狼(四)

Flash动画制作 中的 Flash教程:纯AS打造3d小方块【代码解释】


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 98 ::
收藏到网摘: n/a

[友情提示]看不到动画效果的朋友请去这里观看:

http://bbs.ruanchen.com/"_cx" VALUE="14552">

其实也不算什么教程,只是代码的解释~我尽量写的详细一些~

其实这个效果只有这些代码而已~把代码贴到第一帧就可以了~

好,下面开始:

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]);
 &n