XYZ.fromHex constructor
XYZ.fromHex(
- String hex
Implementation
XYZ.fromHex(String hex) {
final values = hex.replaceAll('#', '').split('');
double _r =
int.parse(values[0].toString() + values[1].toString(), radix: 16) / 255;
double _g =
int.parse(values[2].toString() + values[3].toString(), radix: 16) / 255;
double _b =
int.parse(values[4].toString() + values[5].toString(), radix: 16) / 255;
_r = _r <= 0.04045 ? _r / 12.92 : pow((_r + 0.055) / 1.055, 2.4) as double;
_g = _g <= 0.04045 ? _g / 12.92 : pow((_g + 0.055) / 1.055, 2.4) as double;
_b = _b <= 0.04045 ? _b / 12.92 : pow((_b + 0.055) / 1.055, 2.4) as double;
x = (0.4124 * _r + 0.3576 * _g + 0.1805 * _b) * 100;
y = (0.2126 * _r + 0.7152 * _g + 0.0722 * _b) * 100;
z = (0.0193 * _r + 0.1192 * _g + 0.9505 * _b) * 100;
}