ImageMagick.ColorHSL.UpdateValue C# (CSharp) Метод

UpdateValue() защищенный Метод

Updates the color value in an inherited class.
protected UpdateValue ( ) : void
Результат void
    protected override void UpdateValue()
    {
      double c;
      double h = Hue * 360.0;
      if (Lightness <= 0.5)
        c = 2.0 * Lightness * Saturation;
      else
        c = (2.0 - (2.0 * Lightness)) * Saturation;
      double min = Lightness - (0.5 * c);
      h -= 360.0 * Math.Floor(h / 360.0);
      h /= 60.0;
      double x = c * (1.0 - Math.Abs(h - (2.0 * Math.Floor(h / 2.0)) - 1.0));
      switch ((int)Math.Floor(h))
      {
        case 0:
          Value.R = (QuantumType)(Quantum.Max * (min + c));
          Value.G = (QuantumType)(Quantum.Max * (min + x));
          Value.B = (QuantumType)(Quantum.Max * min);
          break;
        case 1:
          Value.R = (QuantumType)(Quantum.Max * (min + x));
          Value.G = (QuantumType)(Quantum.Max * (min + c));
          Value.B = (QuantumType)(Quantum.Max * min);
          break;
        case 2:
          Value.R = (QuantumType)(Quantum.Max * min);
          Value.G = (QuantumType)(Quantum.Max * (min + c));
          Value.B = (QuantumType)(Quantum.Max * (min + x));
          break;
        case 3:
          Value.R = (QuantumType)(Quantum.Max * min);
          Value.G = (QuantumType)(Quantum.Max * (min + x));
          Value.B = (QuantumType)(Quantum.Max * (min + c));
          break;
        case 4:
          Value.R = (QuantumType)(Quantum.Max * (min + x));
          Value.G = (QuantumType)(Quantum.Max * min);
          Value.B = (QuantumType)(Quantum.Max * (min + c));
          break;
        case 5:
          Value.R = (QuantumType)(Quantum.Max * (min + c));
          Value.G = (QuantumType)(Quantum.Max * min);
          Value.B = (QuantumType)(Quantum.Max * (min + x));
          break;
        default:
          Value.R = 0;
          Value.G = 0;
          Value.B = 0;
          break;
      }
    }