我知道怎么用黑白的
let a = 0;
function setup() {
createCanvas(400, 400);
}
function draw() {
background(220);
fill(map(sin(a), -1, 1, 0, 255));
rect(20, 20, 50);
a += 0.01;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.4.1/p5.js"></script>
2条答案
按热度按时间c9x0cxw01#
我不太了解p5. js。但是简单的谷歌一下就会提供这个解决方案
使用lerp color,你可以创建支持更多颜色的实现。
通过一些重构和更多的工作,这可以支持任意数量的颜色。你可能会有一个罪恶通过整个彩虹。
kupeojn62#
一种方法是
colorMode(HSB)
。Hue Saturation Brightness可以很容易地选择一个紫色色调(360中的280),然后移动饱和度和亮度以在灰度和色调之间渐变。在这个例子中,我在0到40之间渐变饱和度,在60到100之间渐变亮度。在一个极端,HSB为(280,0,100)是纯白的,在另一个极端,(280,40,60)是紫色的。
this answer中提到的
lerpColor
可能最适合这种情况,但我将保留我的答案,因为它提供了lerpColor
可能没有的一些调整。