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

Flash动画制作
商业Flash设计经验谈(节奏控制)
商业Flash设计经验谈(视觉冲击力)
Flash MX 2004:在2个UI组件间进行数据绑定
视觉欺骗---3D矩阵
FLASH MX2004体验二:定制组件外观
Flash MX 2004 教程: 使用信息提示组件 Alert
FLASH MX2004体验一:在用CSS格式化Flash文本
用FLASH MX制作动画卡通人物(2)-矢量图形的转换与修改
Flash转像素图为矢量图(一)
Flash转像素图为矢量图(二)
Flash转像素图为矢量图(三)
Flash制作空战游戏(二)
Flash MX 2004时间轴特效实例 下
用FLASH MX制作动画卡通人物(3)-给人物上色
程序员眼中的Flash MX2004(2)
DW MX 2004的Flash动画元素 上
Flash MX 2004时间轴特效实例 上
Flash转像素图为矢量图(四)
Flash MX 2004行为功能初体验 (下)
Flash MX 2004行为功能初体验(上)

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


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