HueBar.cs 468 B

123456789101112131415161718192021
  1. #nullable enable
  2. using ColorHelper;
  3. using ColorConverter = ColorHelper.ColorConverter;
  4. namespace Terminal.Gui;
  5. internal class HueBar : ColorBar
  6. {
  7. /// <inheritdoc/>
  8. protected override Color GetColor (double fraction)
  9. {
  10. var hsl = new HSL ((int)(MaxValue * fraction), 100, 50);
  11. RGB rgb = ColorConverter.HslToRgb (hsl);
  12. return new (rgb.R, rgb.G, rgb.B);
  13. }
  14. /// <inheritdoc/>
  15. protected override int MaxValue => 360;
  16. }