UNPKG

2.06 kBSource Map (JSON)View Raw
1{"version":3,"file":"rgb2hsv.js","sourceRoot":"../src/","sources":["utilities/color/rgb2hsv.ts"],"names":[],"mappings":";;;AAAA,mCAAyC;AAGzC,+CAA+C;AAC/C,SAAgB,OAAO,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;IACrD,IAAI,CAAC,GAAG,GAAG,CAAC;IACZ,IAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9B,IAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9B,IAAM,KAAK,GAAG,GAAG,GAAG,GAAG,CAAC;IAExB,MAAM;IACN,IAAI,KAAK,KAAK,CAAC,EAAE;QACf,CAAC,GAAG,CAAC,CAAC;KACP;SAAM,IAAI,CAAC,KAAK,GAAG,EAAE;QACpB,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;KAC3B;SAAM,IAAI,CAAC,KAAK,GAAG,EAAE;QACpB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;KACzB;SAAM,IAAI,CAAC,KAAK,GAAG,EAAE;QACpB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;KACzB;IAED,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAEvB,IAAI,CAAC,GAAG,CAAC,EAAE;QACT,CAAC,IAAI,GAAG,CAAC;KACV;IAED,aAAa;IACb,IAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;IAE1D,QAAQ;IACR,IAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,sBAAa,CAAC,GAAG,GAAG,CAAC,CAAC;IAElD,OAAO,EAAE,CAAC,GAAA,EAAE,CAAC,GAAA,EAAE,CAAC,GAAA,EAAE,CAAC;AACrB,CAAC;AA9BD,0BA8BC","sourcesContent":["import { MAX_COLOR_RGB } from './consts';\nimport type { IHSV } from './interfaces';\n\n/** Converts RGB components to an HSV color. */\nexport function rgb2hsv(r: number, g: number, b: number): IHSV {\n let h = NaN;\n const max = Math.max(r, g, b);\n const min = Math.min(r, g, b);\n const delta = max - min;\n\n // hue\n if (delta === 0) {\n h = 0;\n } else if (r === max) {\n h = ((g - b) / delta) % 6;\n } else if (g === max) {\n h = (b - r) / delta + 2;\n } else if (b === max) {\n h = (r - g) / delta + 4;\n }\n\n h = Math.round(h * 60);\n\n if (h < 0) {\n h += 360;\n }\n\n // saturation\n const s = Math.round((max === 0 ? 0 : delta / max) * 100);\n\n // value\n const v = Math.round((max / MAX_COLOR_RGB) * 100);\n\n return { h, s, v };\n}\n"]}
\No newline at end of file