html5如何修改画布颜色,根据渐变html5画布改变颜色

这种变化只是一个线性变化。

所以给了两种颜色

var rgb1 = [100,200,10];

var rgb2 = [200,10,100];

时间t的颜色,其在0到1的范围内var colour = [

((rgb2[0] - rgb1[0]) * t + rgb1[0]) | 0, // the | 0 floors the value

((rgb2[1] - rgb1[1]) * t + rgb1[1]) | 0,

((rgb2[2] - rgb1[2]) * t + rgb1[2]) | 0,

]

如果您有一个以ms为单位的绝对时间,您可以按如下方式转换为标准化t(0-1)

// do at start of time

startTime = performance.now();

endTime = performance.now() + 10000; // in ten seconds

// for each update

t = (performance.now() - startTime) / (endTime - startTime);

t = t > 1 ? 1 : t; // make sure you dont go past the end

// get the color

var colour = [

((rgb2[0] - rgb1[0]) * t + rgb1[0]) | 0, // the | 0 floors the value

((rgb2[1] - rgb1[1]) * t + rgb1[1]) | 0,

((rgb2[2] - rgb1[2]) * t + rgb1[2]) | 0,

]

// as a CSS colour

var cssColour = "rgb(" + colour[0] + "," + colour[1] + "," + colour[2] + ")";

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值