Flex生成颜色渐变值算法

前不久在Flex中完成了一个颜色渐变的算法,感觉还不错,便记录下来,通过设置起始颜色值和终止颜色值,返回一个渐变颜色数组,代码如下:

private function ColorsGradient(ColorArray:Array):Array
{
	var r:int;
	var g:int;
	var b:int;
	var colorArr:Array=new Array();
	var num:Number=255/(ColorArray.length-1); //根据渲染颜色数,获得颜色变化次数
	for(var i:int=0;i<ColorArray.length-1;i++)
	{
		for(var j:int=0;j<num+1;j++)
		{
			r=ColorArray[i+1].red-ColorArray[i].red;
			g=ColorArray[i+1].green-ColorArray[i].green;
			b=ColorArray[i+1].blue-ColorArray[i].blue;
						
			r=ColorArray[i].red+r*j/num;
			g=ColorArray[i].green+g*j/num;
			b=ColorArray[i].blue+b*j/num;
						
			colorArr.push([0,r,g,b]);
		}
	}
	return colorArr;
}

使用方法:

	ColorsGradient([new Color(150,255,255),new Color(255,255,150),new Color(255,150,150)]);



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值