@peculiar/color
Version:
Library for color manipulation and conversion in JavaScript.
68 lines • 1.51 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.hsbToRgb = void 0;
/**
* HSB color to RGB color.
* @example
* hsbToRgb() // =>
*/
function hsbToRgb(h, s, b) {
var hue = h / 360;
var brightness = b / 100;
var saturation = s / 100;
var i = Math.floor(hue * 6);
var f = hue * 6 - i;
var p = brightness * (1 - saturation);
var q = brightness * (1 - f * saturation);
var t = brightness * (1 - (1 - f) * saturation);
var red;
var green;
var blue;
switch (i % 6) {
case 0: {
red = brightness;
green = t;
blue = p;
break;
}
case 1: {
red = q;
green = brightness;
blue = p;
break;
}
case 2: {
red = p;
green = brightness;
blue = t;
break;
}
case 3: {
red = p;
green = q;
blue = brightness;
break;
}
case 4: {
red = t;
green = p;
blue = brightness;
break;
}
case 5: {
red = brightness;
green = p;
blue = q;
break;
}
default:
break;
}
return [
Math.floor(red * 255),
Math.floor(green * 255),
Math.floor(blue * 255),
];
}
exports.hsbToRgb = hsbToRgb;
//# sourceMappingURL=hsb_to_rgb.js.map