sources:
- http://axonflux.com/handy-rgb-to-hsl-and-rgb-to-hsv-color-model-c
- http://alvyray.com/Papers/CG/hwb2rgb.htm
naming convention:
- foo2bar: input and output are in [0, 1]
- fooToBar: natural ranges: hues in [0, 360[, r/g/b in [0, 255], saturation/value/lightness in [0, 100]
The default export is a proxy, there are also direct functions available
import colorTf from 'color-tf';
import hsl2hsv from 'color-tf/hsl2hsv';
colorTf.hslToRgb(200, 95, 62); // [ 66, 189, 250 ]
console.assert(hsl2hsv === colorTf.hsl2hsv);