private void OnPickerColorChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
 {
     if (e.PropertyName == nameof(this.picker.SelectedColor))
     {
         this.SelectedColor = this.picker.SelectedColor;
         this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(SelectedColor)));
     }
 }
 private void ConvertFromHSVToRGB()
 {
     var src = this.hsvPicker.SelectedColor;
     var rgb = Colors.ToRGB(src);
     var safeRGB = ColorsSafe.ToRGBFromHSV(rgb);
     this.rgbPicker.SelectedColor = safeRGB.Item1;
     this.ConversionMessage = safeRGB.Item2;
 }
 private void ConvertFromRGBToHSV()
 {
     var src = this.rgbPicker.SelectedColor;
     var rgb = Colors.ToRGBFull(src);
     this.hsvPicker.SelectedColor = Colors.ToHSV(rgb);
     this.ConversionMessage = string.Empty;
 }
 private void ConvertFromHSVToXYZ()
 {
     var src = this.hsvPicker.SelectedColor;
     var rgb = Colors.ToRGB(src);
     this.xyzPicker.SelectedColor = Colors.ToXYZ(rgb);
     this.ConversionMessage = string.Empty;
 }
 private void ConvertFromHSVToxyY()
 {
     this.ConvertFromHSVToXYZ();
     this.xyYPicker.SelectedColor = Colors.ToxyY(this.xyzPicker.SelectedColor);
 }
 private void UpdateSelectedColor(ColorRGB color)
 {
     this.selectedColor = color;
     this.OnPropertyChanged(nameof(SelectedColor));
 }
 private void OnSelectedColorChanged()
 {
     var rgb = Colors.ToRGBFull(this.selectedColor);
     this.rgbPicker.SelectedColor = this.SelectedColor;
     this.hsvPicker.SelectedColor = Colors.ToHSV(rgb);
     this.xyzPicker.SelectedColor = Colors.ToXYZ(rgb);
     this.OnPropertyChanged(nameof(SelectedColor));
 }
Beispiel #8
0
 public static ColorRGB Clamp(ColorRGB color)
 {
     var r = Clamp(color.R);
     var g = Clamp(color.G);
     var b = Clamp(color.B);
     return new ColorRGB(r, g, b);
 }
 private void ConvertFromXYZToHSV()
 {
     var src = this.xyzPicker.SelectedColor;
     var rgb = Colors.ToRGB(src);
     var safeHSV = ColorsSafe.ToHSVFromXYZ(rgb);
     this.hsvPicker.SelectedColor = safeHSV.Item1;
     this.ConversionMessage = safeHSV.Item2;
 }
 private void ConvertFromxyYToXYZ()
 {
     var src = this.xyYPicker.SelectedColor;
     this.xyzPicker.SelectedColor = Colors.ToXYZ(src);
     this.ConversionMessage = string.Empty;
 }
 private void ConvertFromxyYToRGB()
 {
     var src = this.xyYPicker.SelectedColor;
     this.xyzPicker.SelectedColor = Colors.ToXYZ(src);
     this.ConvertFromXYZToRGB();
 }
Beispiel #12
0
 private static Tuple<ColorRGB, string> SafeConvert(ColorRGBFull rgb, ColorRGB result)
 {
     if (IsOutside(rgb))
     {
         return Tuple.Create(result, $"Cannot convert colors. Approximated by ({result.R}, {result.G}, {result.B})");
     }
     return Tuple.Create(result, string.Empty);
 }
Beispiel #13
0
 public static Color ToUIColor(ColorRGB newColor)
 {
     return Color.FromRgb((byte)newColor.R, (byte)newColor.G, (byte)newColor.B);
 }
Beispiel #14
0
 public static ColorRGBFull ToRGBFull(ColorRGB rgb)
 {
     var r = (double)rgb.R / ColorRGB.MaxValue;
     var g = (double)rgb.G / ColorRGB.MaxValue;
     var b = (double)rgb.B / ColorRGB.MaxValue;
     return new ColorRGBFull(r, g, b);
 }
Beispiel #15
0
 public static uint GetBytes(ColorRGB rgb)
 {
     return 0xFF000000 | (uint)rgb.R << 16 | (uint)rgb.G << 8 | (uint)rgb.B;
 }
 private void ConvertFromXYZToxyY()
 {
     this.xyYPicker.SelectedColor = Colors.ToxyY(this.xyzPicker.SelectedColor);
     this.ConversionMessage = string.Empty;
 }
 private void OnSelectedColorChanged()
 {
     this.picker.SelectedColor = this.SelectedColor;
 }
Beispiel #18
0
 public bool Equals(ColorRGB rgb)
 {
     return this.R == rgb.R && this.G == rgb.G && this.B == rgb.B;
 }