Ejemplo n.º 1
0
 public void UpdateFill(CoreColor min, CoreColor max)
 {
     Background = new LinearGradientBrush
     {
         StartPoint = new Point(0, 0),
         EndPoint = new Point(0, 1),
         GradientStops = new GradientStopCollection
         {
             new GradientStop
             {
                 Color = new Color
                 {
                     A = min.A,
                     R = min.R,
                     G = min.G,
                     B = min.B
                 },
                 Offset = 0
             },
             new GradientStop
             {
                 Color = new Color
                 {
                     A = max.A,
                     R = max.R,
                     G = max.G,
                     B = max.B
                 },
                 Offset = 1
             }
         }
     };
 }
Ejemplo n.º 2
0
        private static CoreColor ColorInterpolation(IList <CoreGradientStop> gradients, double weight)
        {
            CoreColor from = new CoreColor(0, 0, 0, 0), to = new CoreColor(0, 0, 0, 0);
            double    fromOffset = 0, toOffset = 0;

            for (var i = 0; i < gradients.Count; i++)
            {
                // ReSharper disable once InvertIf
                if (gradients[i].Offset <= weight && gradients[i + 1].Offset >= weight)
                {
                    from = gradients[i].Color;
                    to   = gradients[i + 1].Color;

                    fromOffset = gradients[i].Offset;
                    toOffset   = gradients[i + 1].Offset;

                    break;
                }
            }

            return(new CoreColor(
                       InterpolateColorComponent(from.A, to.A, fromOffset, toOffset, weight),
                       InterpolateColorComponent(from.R, from.R, fromOffset, toOffset, weight),
                       InterpolateColorComponent(from.G, to.G, fromOffset, toOffset, weight),
                       InterpolateColorComponent(from.B, to.B, fromOffset, toOffset, weight)));
        }
        public static Color GetColor(CoreColor color)
        {
            var uiColor = Color.White;

            if (color != null)
            {
                uiColor = new Color((byte)color.Red, (byte)color.Green, (byte)color.Blue, (byte)color.Alpha);
            }
            return(uiColor);
        }