KITASENJU DESIGN BLOG

memo, html, javascript, unity

RGBとYIQとHSL

/*
RGB 0〜1
Y: 0〜1
I: 約-0.5957〜約0.5957
Q: 約-0.5226〜約0.5226
*/
function yiqToRgb(y, i, q) {
  
    let r = y + 0.956*i + 0.621*q;
    let g = y - 0.272*i - 0.647*q;
    let b = y - 1.106*i + 1.703*q;
    
    // Clamp values if they are out of range
    r = Math.max(0, Math.min(1, r));
    g = Math.max(0, Math.min(1, g));
    b = Math.max(0, Math.min(1, b));
    
    return [r, g, b];
  
}

YIQ and HSL

editor.p5js.org

"FOOTER"