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

Flash动画制作
FLASH8.0鼠绘实例(2):戴礼帽的美女
FLASH8.0鼠绘实例(3):Q版卡通可爱小女孩
FLASH8.0鼠绘实例(4):Q版卡通漫画女孩
FLASH8.0鼠绘(5):坐在凳子上的气质女孩
FLASH8.0鼠绘教程(7):窈窕淑女
NetConnection.Connect的几种错误
Flash动画角色绘画漫谈
Flash新手鼠绘(13):绘制飞翔的燕子
Flash新手鼠绘(14):燕语春风图
Flash鼠绘(15):触角细长腹部肥大的螳螂
Flash鼠绘(18):可爱的卡通拜年牛
flash钢笔工具的使用方法
Flash绘画技巧:熟练应用画笔工具
Flash绘画技巧:熟练应用钢笔工具
Flash中如何表现不同材质的层次感
分析flash mmorpg地图的实现
Flash cs3转换位图为矢量图
Flash cs3教程:熟练应用直线工具
Flash CS3教程:形状的应用
Flash CS3教程:绘制选择

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 68 ::
收藏到网摘: 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计算出的渐变。看起来好像很麻烦,其实也很容易的,因为我们只要知