using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Data; using System.Windows.Media.Imaging; namespace PipeGallery.Converter { public class SignalIntensityImageConverter : IValueConverter { public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { try { int p = System.Convert.ToInt32(parameter); if (p == 0) { int signalIntensity = (int)value; switch (signalIntensity) { case 0: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\l_icon0.png", UriKind.RelativeOrAbsolute)); case 1: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\l_icon1.png", UriKind.RelativeOrAbsolute)); case 2: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\l_icon2.png", UriKind.RelativeOrAbsolute)); case 3: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\l_icon3.png", UriKind.RelativeOrAbsolute)); case 4: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\l_icon4.png", UriKind.RelativeOrAbsolute)); case 5: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\l_icon5.png", UriKind.RelativeOrAbsolute)); } } else if (p == 1) { int signalIntensity = (int)value; switch (signalIntensity) { case 0: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\r_icon0.png", UriKind.RelativeOrAbsolute)); case 1: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\r_icon1.png", UriKind.RelativeOrAbsolute)); case 2: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\r_icon2.png", UriKind.RelativeOrAbsolute)); case 3: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\r_icon3.png", UriKind.RelativeOrAbsolute)); case 4: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\r_icon4.png", UriKind.RelativeOrAbsolute)); case 5: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\r_icon5.png", UriKind.RelativeOrAbsolute)); } } else if (p == 2) { bool fault = (bool)value; if (fault) { return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\d1_r.png", UriKind.RelativeOrAbsolute)); } else { return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\d2_r.png", UriKind.RelativeOrAbsolute)); } } else if (p == 3) { bool fault = (bool)value; if (fault) { return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\d1_b.png", UriKind.RelativeOrAbsolute)); } else { return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\d2_b.png", UriKind.RelativeOrAbsolute)); } } else if (p == 4) { int signalIntensity = (int)value; switch (signalIntensity) { case 0: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon1.png", UriKind.RelativeOrAbsolute)); case 1: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon2.png", UriKind.RelativeOrAbsolute)); case 2: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon3.png", UriKind.RelativeOrAbsolute)); case 3: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon4.png", UriKind.RelativeOrAbsolute)); case 4: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon5.png", UriKind.RelativeOrAbsolute)); case 5: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon6.png", UriKind.RelativeOrAbsolute)); } } else if (p == 5) { int signalIntensity = (int)value; switch (signalIntensity) { case 0: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon1.png", UriKind.RelativeOrAbsolute)); case 1: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon7.png", UriKind.RelativeOrAbsolute)); case 2: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon8.png", UriKind.RelativeOrAbsolute)); case 3: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon9.png", UriKind.RelativeOrAbsolute)); case 4: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon10.png", UriKind.RelativeOrAbsolute)); case 5: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\gl_icon11.png", UriKind.RelativeOrAbsolute)); } } else if (p == 6) { int signalIntensity = (int)value; switch (signalIntensity) { case 0: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyl_icon1.png", UriKind.RelativeOrAbsolute)); case 1: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyl_icon2.png", UriKind.RelativeOrAbsolute)); case 2: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyl_icon3.png", UriKind.RelativeOrAbsolute)); case 3: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyl_icon4.png", UriKind.RelativeOrAbsolute)); case 4: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyl_icon5.png", UriKind.RelativeOrAbsolute)); case 5: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyl_icon6.png", UriKind.RelativeOrAbsolute)); } } else if (p == 7) { int signalIntensity = (int)value; switch (signalIntensity) { case 0: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyr_icon1.png", UriKind.RelativeOrAbsolute)); case 1: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyr_icon2.png", UriKind.RelativeOrAbsolute)); case 2: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyr_icon3.png", UriKind.RelativeOrAbsolute)); case 3: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyr_icon4.png", UriKind.RelativeOrAbsolute)); case 4: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyr_icon5.png", UriKind.RelativeOrAbsolute)); case 5: return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyr_icon6.png", UriKind.RelativeOrAbsolute)); } } else if (p == 8) { return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyl_icon7.png", UriKind.RelativeOrAbsolute)); } else if (p == 9) { return new BitmapImage(new Uri(AppDomain.CurrentDomain.BaseDirectory + @"Resource\Image\tyr_icon7.png", UriKind.RelativeOrAbsolute)); } return null; } catch { return null; } } public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { throw new NotImplementedException(); } } }