当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > Flash MX 编程深层次应用-高级特效(7)

Flash动画制作
fmx2004 1000问(5)
Flash MX 2004 组件事件简单调试器
fmx2004 1000问(2)
Action Script 2.0新手调试
Flash 2004 MX Components
flash action 详解(9)
flash action 详解(7)
flash action 详解(1)
flash action 详解(6)
一个用纯AS写的正态曲线画法
flash action 详解(3)
浅谈AS的绘图功能及几个简单的实例
AS的基本代码解释(2)
flash action 详解(2)
flash action 详解(10)
运用for循环来对多个mc进行检测
极坐标在绘画方法中的运用
用Flash 2004编写简单的运算类
flash action 详解(4)
flash action 详解(5)

Flash动画制作 中的 Flash MX 编程深层次应用-高级特效(7)


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

3.3 虚幻特效(7)

    

3.3.3  3D物体的旋转

是一个二维的动画软件,不具有3D的作图功能,但是3D物体才具有现实的真实效果,于是3D动画变得非常迫切。Macromedia公司至今为止还没有为Flash加上3D功能,因而3D的实现只能通过编程或者软件生成之后再导入这两种方法了。下面就讲讲在Flash中如何通过3D编程让一个正方形方块产生旋转。如图3-16所示。

3-16

这是个从箭头方向看过去的3D正方形,为了让读者看清这个效果,把颜色设成了透明,很明显远处的面小,近处的面大。请注意每个点都有一个编号,以示区别,下面就是具体程序:

function init() {

    _root.createEmptyMovieClip("pad", 1);

    pad._x = 270;

    pad._y = 200;

      

}

ya = Math.PI;

fl = 200;

//这里的(x,y,z)代表一个点,这里共有8个点,其排列顺序见前面的图

x = new Array(-100, 100, 100, -100, -100, 100, 100, -100);

y = new Array(-100, -100, 100, 100, -100, -100, 100, 100);

z = new Array(-100, -100, -100, -100, 100, 100, 100, 100);

xp = new Array();

yp = new Array();

function square(x1, y1, x2, y2, x3, y3, x4, y4, col) {

//这个函数是画一个多边形,其填充是用50的透明度

    pad.beginFill(col, 50);