我正在尝试使用HSB值创建一个Color对象,但我遇到了一些麻烦。
for(int i = 0; i<255; i++)
{
Color c = Color.getHSBColor(i,100,100);
System.out.println(c);
}
我希望这会旋转所有色调,而是每种颜色都具有相同的RGB RGB值(251,251,2)
输出
java.awt.Color[r=251,g=251,b=2]
java.awt.Color[r=251,g=251,b=2]
java.awt.Color[r=251,g=251,b=2]
....
知道我做错了什么吗? 感谢
答案 0 :(得分:2)
从Color#getHSBColor(float,float,float)的javadocs开始:
The <code>s</code> and <code>b</code> components should be
floating-point values between zero and one
(numbers in the range 0.0-1.0). The <code>h</code> component
can be any floating-point number. The floor of this number is
subtracted from it to create a fraction between 0 and 1.
换句话说,值不在0到255之间,而是在0.0到1.0之间。