色空間 > HLS
- HSLのかいせつ。
- ImageMagickでHSLとHSV色空間を理解する
変換式†
V = max(R,G,B)
S = (V-min(R,G,B))/V if V<>0, 0 otherwise
H =
(G - B)/6/S, if V=R;
1/2+(B - R)/6/S, if V=G;
2/3+(R - G)/6/S, if V=B.
- https://qiita.com/keim_at_si/items/c2d1afd6443f3040e900
// clamp( abs(fract(h+vec3(0,2,1)/3) * 6 - 3) - 1, 0, 1)
return ((clamp(abs(fract(h+vec3(0,2,1)/3.)*6.-3.)-1.,0.,1.)-1.)*s+1.)*v;
- http://jp.wgld.org/js4kintro/editor/#precision...
vec3 hsv(float h, float s, float v){
vec4 t = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);
vec3 p = abs(fract(vec3(h) + t.xyz) * 6.0 - vec3(t.w));
return v * mix(vec3(t.x), clamp(p - vec3(t.x), 0.0, 1.0), s);
}