interpolate method

void interpolate(
  1. ColorTransform c1,
  2. ColorTransform c2,
  3. double value
)

Implementation

void interpolate(ColorTransform c1, ColorTransform c2, double value) {
  final c1m = c1.multipliers;
  final c2m = c2.multipliers;
  final c1o = c1.offsets;
  final c2o = c2.offsets;

  multipliers[0] = c1m[0] + (c2m[0] - c1m[0]) * value;
  multipliers[1] = c1m[1] + (c2m[1] - c1m[1]) * value;
  multipliers[2] = c1m[2] + (c2m[2] - c1m[2]) * value;
  multipliers[3] = c1m[3] + (c2m[3] - c1m[3]) * value;

  offsets[0] = c1o[0] + ((c2o[0] - c1o[0]) * value).toInt();
  offsets[1] = c1o[1] + ((c2o[1] - c1o[1]) * value).toInt();
  offsets[2] = c1o[2] + ((c2o[2] - c1o[2]) * value).toInt();
  offsets[3] = c1o[3] + ((c2o[3] - c1o[3]) * value).toInt();
}