private static void AddNewRandomColor() { Color newColor; while (true) { newColor = Color.FromArgb(255, Random.Next(0, 255), Random.Next(0, 255), Random.Next(0, 255)); if (!ColorValues.Contains(ColorTranslator.ToHtml(newColor))) { break; } } ColorValues.Add(ColorTranslator.ToHtml(newColor)); }
public static Grain GetGrain(Color color) { if (color.ToArgb() == Color.White.ToArgb()) { return(Grain.EmptyGrain); } else if (color.ToArgb() == Color.Black.ToArgb()) { return(Grain.InjectionGrain); } else { var colorHtml = ColorTranslator.ToHtml(color); var id = ColorValues.FindIndex(x => colorHtml == x); if (id == -1) { ColorValues.Add(colorHtml); } return(new Grain(++id)); } }
public MapChart() { InitializeComponent(); maps.Source = null; vl = new C1VectorLayer() { LabelVisibility = LabelVisibility.Hidden, Foreground = new SolidColorBrush(Color.FromArgb(255, 0x97, 0x35, 0x35))}; // read text data from resources using (Stream stream = Assembly.GetExecutingAssembly() .GetManifestResourceStream("MapsSamples.Resources.gdp-ppp.txt")) { using (StreamReader sr = new StreamReader(stream)) { for (; !sr.EndOfStream; ) { string s = sr.ReadLine(); string[] ss = s.Split(new char[] { '\t' }, StringSplitOptions.RemoveEmptyEntries); countries.Add(new Country() { Name = ss[1].Trim(), Value = double.Parse(ss[2], CultureInfo.InvariantCulture) }); } } } // create palette ColorValues cvals = new ColorValues(); cvals.Add(new ColorValue() { Color = Color.FromArgb(255,241,244,255), Value = 0 }); cvals.Add(new ColorValue() { Color = Color.FromArgb(255, 241, 244, 255), Value = 5000 }); cvals.Add(new ColorValue() { Color = Color.FromArgb(255, 224, 224, 246), Value = 10000 }); cvals.Add(new ColorValue() { Color = Color.FromArgb(255, 203, 205, 255), Value = 20000 }); cvals.Add(new ColorValue() { Color = Color.FromArgb(255, 179, 182, 230), Value = 50000 }); cvals.Add(new ColorValue() { Color = Color.FromArgb(255, 156, 160, 240), Value = 100000 }); cvals.Add(new ColorValue() { Color = Color.FromArgb(255, 127, 132, 243), Value = 200000 }); cvals.Add(new ColorValue() { Color = Color.FromArgb(255, 89, 97, 230), Value = 500000 }); cvals.Add(new ColorValue() { Color = Color.FromArgb(255, 56, 64, 217), Value = 1000000 }); cvals.Add(new ColorValue() { Color = Color.FromArgb(255,19,26,148), Value = 2000000 }); cvals.Add(new ColorValue() { Color = Color.FromArgb(255,0,3,74), Value = 1.001 * countries.GetMax() }); countries.Converter = cvals; // read world map from resources Utils.LoadKMZFromResources(vl, "MapsSamples.Resources.WorldMap.kmz", true, ProcessWorldMap); maps.Layers.Add(vl); maps.TargetZoomChanged += new EventHandler<C1.WPF.PropertyChangedEventArgs<double>>(maps_TargetZoomChanged); InitLegend(); }