Colors 如何循环颜色?
我想随着时间的推移平滑地更改视图的背景色 选择两种颜色c1和c2,很容易在rgb空间中生成时间c(t)=t.c1+(1-t).c2的颜色函数,这将是两种颜色之间的渐变 然而,rgb空间是3D的,我正在寻找一种方法来平滑地枚举所有颜色。 我知道可能有几十亿种颜色,但在4x4x4位上编码RGB对我的项目来说是可以的 我的问题与编程语言的选择无关 我尝试过(伪代码/Python) 然而,这一点都不平滑,如果你明白我的意思,它就像一个“阶跃函数”(颜色将从纯绿色变为完全没有绿色,例如一点红色)Colors 如何循环颜色?,colors,Colors,我想随着时间的推移平滑地更改视图的背景色 选择两种颜色c1和c2,很容易在rgb空间中生成时间c(t)=t.c1+(1-t).c2的颜色函数,这将是两种颜色之间的渐变 然而,rgb空间是3D的,我正在寻找一种方法来平滑地枚举所有颜色。 我知道可能有几十亿种颜色,但在4x4x4位上编码RGB对我的项目来说是可以的 我的问题与编程语言的选择无关 我尝试过(伪代码/Python) 然而,这一点都不平滑,如果你明白我的意思,它就像一个“阶跃函数”(颜色将从纯绿色变为完全没有绿色,例如一点红色) 你知道怎
你知道怎么做吗?在这种情况下,我认为你最好使用颜色的HSV值。您可以使用相同的策略,一次只更改其中一个HSV值,以使颜色移动更流畅 编辑: 在进一步研究之后,我发现了为什么不使用HSV的论点。 这可能是解决您问题的一个好办法:
for red in xrange(16):
for green in xrange(16):
for blue in xrange(16):
color = rgb(red, green, blue)