/* 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