@macrostrat/column-components
Version:
React rendering primitives for stratigraphic columns
50 lines (49 loc) • 1.04 kB
JavaScript
import "../../utils/type.js";
import unpack from "../../utils/unpack.js";
const { floor } = Math;
const hcg2rgb = (...args) => {
args = unpack(args, "hcg");
let [h, c, _g] = args;
let r, g, b;
_g = _g * 255;
const _c = c * 255;
if (c === 0) {
r = g = b = _g;
} else {
if (h === 360) h = 0;
if (h > 360) h -= 360;
if (h < 0) h += 360;
h /= 60;
const i = floor(h);
const f = h - i;
const p = _g * (1 - c);
const q = p + _c * (1 - f);
const t = p + _c * f;
const v = p + _c;
switch (i) {
case 0:
[] = [v, t, p];
break;
case 1:
[] = [q, v, p];
break;
case 2:
[] = [p, v, t];
break;
case 3:
[] = [p, q, v];
break;
case 4:
[] = [t, p, v];
break;
case 5:
[] = [v, p, q];
break;
}
}
return [r, g, b, args.length > 3 ? args[3] : 1];
};
export {
hcg2rgb as default
};
//# sourceMappingURL=hcg2rgb.js.map