当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > RGB颜色action自定义教程(3) — 颜色渐变篇

Flash动画制作
Flash 3d效果精彩实例(5)
贺新年 制作五彩缤纷焰火动画
FlashMX2004中的XML应用之原理篇
制作一个骄艳的鲜花情人Flash贺卡
有趣 用Flash制作互动的小人
Flash制作鸡年新春动画贺卡
Flash MX 2004 UI组件系列教程(3)
Flash加载外部文件(5)
Flash MX 2004 UI组件系列教程(4)
Flash加载外部文件(2)
Flash加载外部文件(3)
一个最简便的代码实现任意数字和0的来回跳转
让Flash课件中测试题信手拈来
MX中如何实现swf文件的完美跳转
三分钟理解Flash中的级别关系
flash与ASP通信的几种方法
flashMX2004视频插件的应用教程
如何做好一个多人配合的flash项目
AS计算方面的错误
如何防止SWF文件被反编译

Flash动画制作 中的 RGB颜色action自定义教程(3) — 颜色渐变篇


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

 前面两篇讲了颜色设置的基础和随心所欲的得到随机的颜色,希望对大家多少有所帮助。说完随机颜色,我们再讲讲颜色渐变,就像下面这个动画:

页面:点这儿参观
源代码(3K):
colortest2.zip

  这样用颜色来表示y轴数值的大小,还是很直观的,怎么做的呢?有了前面关于颜色讨论的基础,我想大家应该都差不多猜出做法来了,就是把rgb中的一个跟随变量的增加而增加,就像这样:
for (n=1; n<=200; n++) {
    attachMovie("ball", "ball"+n, n);
    //复制200个点
    this["ball"+n]._x = 2*n;
    y = Math.sin(n*Math.PI/100)*100+150;
    this["ball"+n]._y = y;
    //设置点的位置
    mycolor = new Color(this["ball"+n]);
    mycolor.setRGB(255 << 16 | Math.floor(255*(y-50)/200)<<8 | 0);
    //根据y的位置定义点的颜色
}
  关键就在红色的Math.floor(255*(y-50)/200)<<8处,为什么这么写我就不用解释了吧?大家应该都明白了吧?不明白再问。

  看了上面的颜色渐变,大家肯定想做出更复杂的颜色渐变吧,看看下面:

页面:点这儿参观
源代码(3K):
colortest3.zip

  是不是很有意思啊,下面是用flash自带的调色板做的渐变,上面是用action计算出的渐变。看起来好像很麻烦,其实也很容易的,因为我们只要知