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

Flash动画制作
Flash卡通景物绘制
鼠绘偏写实人物
鼠绘--柱顶红的画法
FLASH实现滚动条+网页书签效果
Flash MX中Button Object的用法
as入门之数学函数--弧度
as入门之数学函数--Math类
闪动的变色圆盘
组件封装为mxp文件的方法
判断数字大小
Flash 缓存问题的解决
Flash MX pro 2004 新特性之Flash Lite
在Flah MX2004的ListBox中应用HTML
Flash MX 2004中的XML应用之原理篇
Flash MX 2004视频教程超速入门系列(1)
Flash MX 2004视频教程超速入门系列(2)
Flash MX 2004视频教程超速入门系列(3)
Flash MX 2004视频教程超速入门系列(4)
Flash MX 2004视频教程超速入门系列(5)
Flash MX 2004视频教程超速入门系列(6)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 91 ::
收藏到网摘: 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