我已经根据 HSL->RGB 和 HSV->RGB 算法实现了一些功能。
它们大多工作正常,但我不确定什么是正确的做法,然后颜色组件由于转换而溢出。
例如,红色分量最终是,1.2
而允许的范围是[0..1]
。如果我将它乘以 255,我显然会得到一个在 RGB 世界中无效的值。
处理这个问题的正确方法是什么——截断(if > 1 then set to 1
)或环绕(if > 1 then substract 1
)?
我已经根据 HSL->RGB 和 HSV->RGB 算法实现了一些功能。
它们大多工作正常,但我不确定什么是正确的做法,然后颜色组件由于转换而溢出。
例如,红色分量最终是,1.2
而允许的范围是[0..1]
。如果我将它乘以 255,我显然会得到一个在 RGB 世界中无效的值。
处理这个问题的正确方法是什么——截断(if > 1 then set to 1
)或环绕(if > 1 then substract 1
)?