gpt4 book ai didi

java - 遍历Java中的所有颜色

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:12:51 25 4
gpt4 key购买 nike

我正在尝试编写一个遵循以下逻辑的方法:

我有 3 个整数,r、g 和 b。

开头:

r = 255;
g = 0;
b = 0;

现在你可以看到,r 是 255,现在 g 也应该一点一点地上升,直到达到 255

r = 255;
g = 255;
b = 0;

所有三个整数组合成一种颜色。第一个是红色的,现在是黄色的。它不应该变成绿色,所以 r 应该减少直到只有 g 是 255:

r = 0;
g = 255;
b = 0;

下一个颜色应该是青色,依此类推。

这是顺序:

red - yellow - green - cyan - blue - violet - red 

--> 从头开始​​。

我试图通过使用 if 方法来实现这一点:

e.g.: if(r == 255 && g == 0) g++;

等,但我意识到这将是漫长而复杂的。

是否有人对如何循环显示颜色有其他想法?

我的目标是在每次更新时更改方形对象的颜色:

public void update() {
-->color change code here<--
color = new Color(r, g, b, alpha);
}

因此每次调用更新方法时(全部 5 毫秒),都会调用代码。

有什么想法吗?

最佳答案

java.awt.Color类提供静态函数

getHSBColor(float h, float s, float b)

使用 HSB 颜色空间,使色调分量从 0 变为 1,同时保持其他分量不变。

color = Color.getHSBColor(hue, 1, 1);

关于java - 遍历Java中的所有颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21863685/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com