static ColorPallete() { const int numberOfColors = 12; const double step = (240.0 / numberOfColors); ChartingPalleteColors = new List<ChartingPalleteColor>(); var baseColor = System.Drawing.ColorTranslator.FromHtml("#8A56E2"); var baseHue = (new HSLColor(baseColor)).Hue; for (var i = 1; i < numberOfColors; ++i) { var temp = (Color) new HSLColor(baseColor) {Hue = (baseHue + step*i)%240.0}; var palletColor = new ChartingPalleteColor { Color = temp.Name.Substring(2) }; ChartingPalleteColors.Add(palletColor); } for (var i = 0; i < numberOfColors/2; i += 2) { var temp = ChartingPalleteColors[i]; ChartingPalleteColors[i] = ChartingPalleteColors[(numberOfColors/2) + i]; ChartingPalleteColors[(numberOfColors/2) + i] = temp; } ChartingPalleteColor previousColor = null; for (var i = 0; i < ChartingPalleteColors.Count; i++) { var color = ChartingPalleteColors[i]; if (previousColor != null) previousColor.Next = color; previousColor = color; } ChartingPalleteColors[ChartingPalleteColors.Count - 1].Next = ChartingPalleteColors[0]; }
static ColorPallete() { const int numberOfColors = 12; const double step = (240.0 / numberOfColors); ChartingPalleteColors = new List <ChartingPalleteColor>(); var baseColor = System.Drawing.ColorTranslator.FromHtml("#8A56E2"); var baseHue = (new HSLColor(baseColor)).Hue; for (var i = 1; i < numberOfColors; ++i) { var temp = (Color) new HSLColor(baseColor) { Hue = (baseHue + step * i) % 240.0 }; var palletColor = new ChartingPalleteColor { Color = temp.Name.Substring(2) }; ChartingPalleteColors.Add(palletColor); } for (var i = 0; i < numberOfColors / 2; i += 2) { var temp = ChartingPalleteColors[i]; ChartingPalleteColors[i] = ChartingPalleteColors[(numberOfColors / 2) + i]; ChartingPalleteColors[(numberOfColors / 2) + i] = temp; } ChartingPalleteColor previousColor = null; for (var i = 0; i < ChartingPalleteColors.Count; i++) { var color = ChartingPalleteColors[i]; if (previousColor != null) { previousColor.Next = color; } previousColor = color; } ChartingPalleteColors[ChartingPalleteColors.Count - 1].Next = ChartingPalleteColors[0]; }