toXyzColor method

  1. @override
XyzColor toXyzColor()
override

Implementation

@override
XyzColor toXyzColor() {
  var xyz = <String, num>{'x': a / 500 + (l + 16) / 116, 'y': (l + 16) / 116, 'z': (l + 16) / 116 - b / 200};

  xyz.forEach((key, value) {
    var cube = pow(value, 3);
    if (cube > 0.008856) {
      xyz[key] = cube;
    } else {
      xyz[key] = (value - 16 / 116) / 7.787;
    }
    xyz[key] = xyz[key]! * XyzColor.referenceWhite[key];
  });

  return XyzColor(xyz['x']!, xyz['y']!, xyz['z']!);
}