UNPKG

nanoleaf-cove

Version:
50 lines (49 loc) 1.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.rgb2hsv = void 0; var rgb2hsv = function (_a) { var r = _a[0], g = _a[1], b = _a[2]; var rr; var gg; var bb; r = r / 255; g = g / 255; b = b / 255; var h; var s; var v = Math.max(r, g, b); var diff = v - Math.min(r, g, b); var diffc = function (c) { return (v - c) / 6 / diff + 1 / 2; }; if (diff == 0) { h = s = 0; } else { s = diff / v; rr = diffc(r); gg = diffc(g); bb = diffc(b); if (r === v) { h = bb - gg; } else if (g === v) { h = 1 / 3 + rr - bb; } else if (b === v) { h = 2 / 3 + gg - rr; } if (h < 0) { h += 1; } else if (h > 1) { h -= 1; } } return { h: Math.round(h * 360), s: Math.round(s * 100), v: Math.round(v * 100), }; }; exports.rgb2hsv = rgb2hsv;