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

Flash动画制作
Flash CS3教程:墨水瓶工具创建轮廓线
Flash绘画技巧:绘制切开的西瓜和咸鸡蛋
Flash动画制作技巧:高级的阴影技巧
Flash CS3技巧:直接导入PSD文件编辑
Flash绘画技巧:透视和层次效果的阴影
Flash绘画技巧:投影滤镜设置阴影
Flash动画技巧:flash制作同步特效
Flash旋转复制和对齐工具绘制齿轮图标
Flash角色绘画技巧:绘制人物头像
Flash摄像头游戏课件的设计与实现
Flash技巧:PNG非透明区域为mask
Flash动画技巧:边缘模糊的mask
Flash遮罩让图片流动起来
Flash绘制:云层,海鸥,椰树,帆船,伞,椅子,日光
Flash鼠绘新手入门:金属花朵装饰的相框
网页中嵌入flash的最佳方案
Flash动画漫画人物的基本形变研究
Flash CS4基础(4):3d动画特效
Flash CS4教程:3D旋转和3D位移
Flash制作变化的模糊和拉伸产生超酷动画

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


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

第3章 ActionScript高级特效制作

3.1 堆栈特效(1)

    

本节的名字叫做堆栈特效,也就是说本节要讲解的内容不但要使用数组,而且要用堆栈来控制整个特效。我们将通过两个实例,深入地讲解堆栈在特效中的应用,程序有一定的深度,希望大家认真地学习。

3.1.1  递归法画方格线

Flash经过几年的发展现在已经具备了强大的编程功能,很多地方已经很像一个专业的编程软件,比如递归调用、堆栈的使用、队列的使用、广度遍历、深度遍历等,这些只有在专业编程软件中才出现的应用在Flash中已经出现。下面这段程序就是利用队列完成一个画方格的功能:

init = function () {

    // 创建一个新的文本框,同时清空它

    _root.createTextField("dongua", 1, 160, 340, 120, 20);

    dongua.text = "";

    this.clear();

    cc1 = Math.floor(Math.random()*256) << 6;

    cc2 = Math.floor(Math.random()*256) << 16;

 // 这里的(x,y)表示要画格子的中心点坐标,a代表宽度,c1c4代表4个颜色值

        

    table = new Array({x:200, y:200, a:256, c1:cc1, c2:cc2, c3:cc2*2, c4:cc1/4});

};

_root.init();

_root.onEnterFrame = function() {

    //这里的1024代表这些线分割的小方块数目

    if (table.length<1024 && dongua.text == "") {

             //取出一个节点然后再画十字交叉线

             t = table.shift();

             cc = Math.floor((2*t.c1+3*t.c2+4*