public static MonochromaticColorScheme FromColor(ColorRGB color) { //if (flatten) { // var labColors = ColorScheme.GenerateColors (24, 0, .66, .81); // color = color.NearestFlatColor (labColors); //} var lab = (ColorLAB)ColorLAB.FromColor(color); var dark = new Swatch(DarkColorID, ColorLAB.ToColor(lab.L - 20, lab.A, lab.B)); var darkened = new Swatch(DarkenedColorID, ColorLAB.ToColor(lab.L - 10, lab.A, lab.B)); var primary = new Swatch(PrimaryColorID, color); var lightened = new Swatch(LightenedColorID, ColorLAB.ToColor(lab.L + 10, lab.A, lab.B)); var light = new Swatch(LightColorID, ColorLAB.ToColor(lab.L + 20, lab.A, lab.B)); return(new MonochromaticColorScheme(new Swatch [] { dark, darkened, primary, lightened, light })); }