我正在尝试使用此算法将 HSB 值转换为 RGB 值,但我没有得到正确的值。我有 29 的固定 s,100 的固定 b,并且正在为 h 值生成 0-360 之间的随机整数,并将它们输入函数以获取 RGB:
float h = (arc4random() % 360);
float s = 29;
float b = 100;
HSL2RGB(h, s, b, &red, &green, &blue);
NSLog(@"r:%f g:%f b:%f", red, green, blue);
输出:
r:2971.000000 g:2971.000000 b:2971.000000
我也试过这个:
float h = (arc4random() % 360)/1000.0;
float s = 0.29;
float b = 1.0;
HSL2RGB(h, s, b, &red, &green, &blue);
NSLog(@"r:%f g:%f b:%f", red, green, blue);
输出:
r:1.000000 g:1.000000 b:1.000000
我做错了什么,还是这个算法搞砸了?