예제 #1
0
        private Color method_5(int component)
        {
            float num1 = this.color_1.GetSaturation();

            if ((double)num1 == 0.0)
            {
                num1 = 1f;
            }
            float num2 = this.color_1.GetBrightness();

            if ((double)num2 == 0.0)
            {
                num2 = 0.5f;
            }
            return(ColorRgbEditor.FromHSLA((double)component / 360.0, (double)num1, (double)num2, (double)this.color_0.A / (double)byte.MaxValue));
        }
예제 #2
0
 private Color method_7(int component)
 {
     return(ColorRgbEditor.FromHSLA((double)this.color_2.GetHue() / 360.0, (double)component / 100.0, (double)this.color_2.GetBrightness(), (double)this.color_0.A / (double)byte.MaxValue));
 }
예제 #3
0
 private Color method_6(int component)
 {
     return(ColorRgbEditor.FromHSLA((double)component / 360.0, 1.0, 0.5, 1.0));
 }
예제 #4
0
        public static Color FromHSLA(double H, double S, double L, double A)
        {
            if (A > 1.0)
            {
                A = 1.0;
            }
            double num1 = L;
            double num2 = L;
            double num3 = L;
            double num4 = L <= 0.5 ? L * (1.0 + S) : L + S - L * S;

            if (num4 > 0.0)
            {
                double num5 = L + L - num4;
                double num6 = (num4 - num5) / num4;
                H *= 6.0;
                int    num7  = (int)H;
                double num8  = H - (double)num7;
                double num9  = num4 * num6 * num8;
                double num10 = num5 + num9;
                double num11 = num4 - num9;
                switch (num7)
                {
                case 0:
                    num1 = num4;
                    num2 = num10;
                    num3 = num5;
                    break;

                case 1:
                    num1 = num11;
                    num2 = num4;
                    num3 = num5;
                    break;

                case 2:
                    num1 = num5;
                    num2 = num4;
                    num3 = num10;
                    break;

                case 3:
                    num1 = num5;
                    num2 = num11;
                    num3 = num4;
                    break;

                case 4:
                    num1 = num10;
                    num2 = num5;
                    num3 = num4;
                    break;

                case 5:
                    num1 = num4;
                    num2 = num5;
                    num3 = num11;
                    break;
                }
            }
            return(Color.FromArgb((int)ColorRgbEditor.smethod_0(A * (double)byte.MaxValue), (int)ColorRgbEditor.smethod_0(num1 * (double)byte.MaxValue), (int)ColorRgbEditor.smethod_0(num2 * (double)byte.MaxValue), (int)ColorRgbEditor.smethod_0(num3 * (double)byte.MaxValue)));
        }
예제 #5
0
 public static Color FromHSL(double H, double S, double L)
 {
     return(ColorRgbEditor.FromHSLA(H, S, L, 1.0));
 }