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

Flash动画制作
Flash交互式动画教程:星座查询器的制作
Flash教程:测试AS代码的执行速度
Flash教程:常用短语trace();的使用
Flash教程:if条件语句的用法
FLASH教程:可爱不倒翁动画效果
Flash教程:旋转拖尾文字效果的制作
Flash教程:运用DynamicRegistration类动态改变注册点的使用方法
Flash初学者系列教程:常用工具的使用(一)
Flash 【AS2.0】教程:获取外部按钮方法
Flash教程:10类ActionScript过渡效果演示及代码整理
Flash教程:位图实现形状渐变效果的方法
Flash教程:利用遮罩制作x光机透视效果
Flash鼠绘教程:马蹄莲制作过程
用Flash制作水墨画动画教程
Flash教程:通过实例学习AS(一):火焰的制作
Flash教程:通过实例学习AS(二):小狗追骨头
Flash教程:通过实例学习AS(三):体质测试
Flash教程:菜鸟一起学画画之初级练习一:叶子的绘制
Flash教程:旋转相册的制作
Flash教程:翻书效果的制作

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


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