注册
 找回密码
 注册
江西广告网
查看: 805|回复: 0
打印 上一主题 下一主题

Flash MX 编程深层次应用-高级特效(1)

[复制链接]

该用户从未签到

1
跳转到指定楼层
发表于 2009-5-25 12:09:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
第3章 ActionScript高级特效制作
3.1 堆栈特效(1)
     本节的名字叫做堆栈特效,也就是说本节要讲解的内容不但要使用数组,而且要用堆栈来控制整个特效。我们将通过两个实例,深入地讲解堆栈在Flash特效中的应用,程序有一定的深度,希望大家认真地学习。  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代表宽度,c1~c4代表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*t.c3)/6);               _root.lineStyle(2, cc, 100);          //用两个点的宽度,cc的颜色值,画出两条交叉的十字架线               _root.moveTo(t.x-t.a/2, t.y);               _root.lineTo(t.x t.a/2, t.y);
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表