getGradientShader static method

Shader getGradientShader({
  1. required BadgeGradient badgeGradient,
  2. required double width,
  3. required double height,
})

Implementation

static Shader getGradientShader({
  required BadgeGradient badgeGradient,
  required double width,
  required double height,
}) {
  switch (badgeGradient.gradientType) {
    case BadgeGradientType.linear:
      return ui.Gradient.linear(
        CalculationUtils.calculateOffset(
          alignment: badgeGradient.begin!,
          width: width,
          height: height,
        ),
        CalculationUtils.calculateOffset(
          alignment: badgeGradient.end!,
          width: width,
          height: height,
        ),
        badgeGradient.colors,
      );
    case BadgeGradientType.radial:
      return ui.Gradient.radial(
        CalculationUtils.calculateOffset(
          alignment: badgeGradient.center!,
          width: width,
          height: height,
        ),
        width * badgeGradient.radius!,
        badgeGradient.colors,
      );
    case BadgeGradientType.sweep:
      return ui.Gradient.sweep(
        CalculationUtils.calculateOffset(
          alignment: badgeGradient.center!,
          width: width,
          height: height,
        ),
        badgeGradient.colors,
      );
  }
}