From 8e49a8041391c9aa946060aed2c538b1ce958a68 Mon Sep 17 00:00:00 2001 From: Roy Ben-Shabat Date: Thu, 19 Sep 2019 18:29:10 +0300 Subject: Added support for multiple ColorLib versions ! Added version control and display in RML & Research Module. Implemented GenerateHive optimizations. --- .../ViewModels/MainViewVM.cs | 9 ++++++--- .../Modules/Tango.MachineStudio.Developer/App.xaml | 12 ++++++++++++ .../Tango.MachineStudio.Developer.csproj | 6 +++++- .../ViewModels/MainViewVM.cs | 11 ++++++----- .../Views/JobView.xaml | 16 +++++++++++----- .../ViewModels/ColorConversionViewVM.cs | 9 ++++++--- .../ViewModels/MainViewVM.cs | 21 +++++++++++++++++++++ .../Tango.MachineStudio.RML/ViewModels/RgbVM.cs | 6 +++--- .../Tango.MachineStudio.RML/Views/RmlView.xaml | 3 +++ .../Tango.MachineStudio.RML/Views/RmlsView.xaml | 2 ++ 10 files changed, 75 insertions(+), 20 deletions(-) create mode 100644 Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/App.xaml (limited to 'Software/Visual_Studio/MachineStudio/Modules') diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ColorLab/ViewModels/MainViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ColorLab/ViewModels/MainViewVM.cs index a521127e1..c831da30a 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ColorLab/ViewModels/MainViewVM.cs +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ColorLab/ViewModels/MainViewVM.cs @@ -435,7 +435,9 @@ namespace Tango.MachineStudio.ColorLab.ViewModels IColorConverter converter = new DefaultColorConverter(); - var output = converter.Convert(input); + input.GenerateHive = true; + + var output = converter.Convert(input, SelectedRML.ColorConversionVersion); IsOutOfGamut = output.OutOfGamut; @@ -679,7 +681,7 @@ namespace Tango.MachineStudio.ColorLab.ViewModels IColorConverter converter = new DefaultColorConverter(); - var output = converter.Convert(input); + var output = converter.Convert(input, SelectedRML.ColorConversionVersion); if (SourceColor.IsLab) { @@ -744,7 +746,8 @@ namespace Tango.MachineStudio.ColorLab.ViewModels if (IsHosted) { - if(SelectedRML.Cct != null){ + if (SelectedRML.Cct != null) + { SelectedCCT = new CctModel() { diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/App.xaml b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/App.xaml new file mode 100644 index 000000000..dff08b5e8 --- /dev/null +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/App.xaml @@ -0,0 +1,12 @@ + + + + + + + + + + \ No newline at end of file diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/Tango.MachineStudio.Developer.csproj b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/Tango.MachineStudio.Developer.csproj index 6e55b6d14..10fce1b20 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/Tango.MachineStudio.Developer.csproj +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/Tango.MachineStudio.Developer.csproj @@ -141,6 +141,10 @@ RunningJobView.xaml + + MSBuild:Compile + Designer + Designer MSBuild:Compile @@ -361,7 +365,7 @@ - + \ No newline at end of file diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/ViewModels/MainViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/ViewModels/MainViewVM.cs index ac5354a74..3f551c866 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/ViewModels/MainViewVM.cs +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/ViewModels/MainViewVM.cs @@ -827,7 +827,7 @@ namespace Tango.MachineStudio.Developer.ViewModels { while (true) { - if (!_rml_has_no_cct && EnableColorConversion && !_disable_gamut_check && IsJobVisible && IsVisible && ActiveJob != null && ActiveJob.Segments != null) + if (!_rml_has_no_cct && EnableColorConversion && !_disable_gamut_check && IsJobVisible && IsVisible && ActiveJob != null && ActiveJob.Segments != null && SelectedProcessParametersTable != null) { try { @@ -839,7 +839,7 @@ namespace Tango.MachineStudio.Developer.ViewModels { try { - var output = _converter.Convert(stop); + var output = _converter.Convert(stop, false); stop.Red = output.SingleCoordinates.Red; stop.Green = output.SingleCoordinates.Green; @@ -853,7 +853,8 @@ namespace Tango.MachineStudio.Developer.ViewModels { try { - stop.IsOutOfGamut = _converter.IsOutOfGamut(stop); + var output = _converter.Convert(stop, false); + output.ApplyOnBrushStopLiquidVolumes(stop, SelectedProcessParametersTable); stop.OutOfGamutChecked = true; } catch { } @@ -874,7 +875,7 @@ namespace Tango.MachineStudio.Developer.ViewModels _hiveOpened = true; try { - HiveSuggestions = _converter.Convert(SelectedBrushStop).CreateHiveSuggestions(); + HiveSuggestions = _converter.Convert(SelectedBrushStop, true).CreateHiveSuggestions(); } catch (Exception ex) { @@ -915,7 +916,7 @@ namespace Tango.MachineStudio.Developer.ViewModels if (!_color_changed_from_hive && _hiveOpened) { SelectedBrushStop.Corrected = false; - HiveSuggestions = _converter.Convert(SelectedBrushStop).CreateHiveSuggestions(); + HiveSuggestions = _converter.Convert(SelectedBrushStop, true).CreateHiveSuggestions(); } } diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/Views/JobView.xaml b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/Views/JobView.xaml index 861a639d3..742798ce4 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/Views/JobView.xaml +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Developer/Views/JobView.xaml @@ -753,13 +753,19 @@ MEDIA - + - - - - + + + + + + + v: + + + diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/ColorConversionViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/ColorConversionViewVM.cs index 2624c9b7d..ebbe08fae 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/ColorConversionViewVM.cs +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/ColorConversionViewVM.cs @@ -19,7 +19,7 @@ using Tango.SharedUI; namespace Tango.MachineStudio.RML.ViewModels { - public class ColorConversionViewVM: ViewModel + public class ColorConversionViewVM : ViewModel { #region properties @@ -268,7 +268,9 @@ namespace Tango.MachineStudio.RML.ViewModels IColorConverter converter = new DefaultColorConverter(); - var output = converter.Convert(input); + input.GenerateHive = true; + + var output = converter.Convert(input, RML.ColorConversionVersion); IsOutOfGamut = output.OutOfGamut; @@ -330,6 +332,7 @@ namespace Tango.MachineStudio.RML.ViewModels ConversionInput input = new ConversionInput(); input.ColorSpace = PMR.ColorLab.ColorSpace.Volume; input.ForwardData = ByteString.CopyFrom(CCT.Data); + input.GenerateHive = false; input.InputCoordinates = new InputCoordinates(); input.ThreadL = RML.WhitePointL; @@ -364,7 +367,7 @@ namespace Tango.MachineStudio.RML.ViewModels IColorConverter converter = new DefaultColorConverter(); - var output = converter.Convert(input); + var output = converter.Convert(input, RML.ColorConversionVersion); if (SourceColor.IsLab) { diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/MainViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/MainViewVM.cs index 361608ef6..c2637b527 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/MainViewVM.cs +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/MainViewVM.cs @@ -208,6 +208,27 @@ namespace Tango.MachineStudio.RML.ViewModels _rmls_context = ObservablesContext.CreateDefault(); Rmls = await new RmlsCollectionBuilder(_rmls_context).SetAll().WithLiquidFactors().WithMediaProperties().BuildAsync(); + + //Load CCT file names... + var ccts = await _rmls_context.Ccts.Select(x => new + { + x.Guid, + x.FileName + }).ToListAsync(); + + foreach (var rml in Rmls) + { + var cct = ccts.SingleOrDefault(x => x.Guid == rml.CctGuid); + + if (cct != null) + { + rml.Cct = new Cct() + { + Guid = cct.Guid, + FileName = cct.FileName, + }; + } + } } private async void LoadActiveRML(String guid) diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/RgbVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/RgbVM.cs index e64592aae..084a317a7 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/RgbVM.cs +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/RgbVM.cs @@ -106,9 +106,9 @@ namespace Tango.MachineStudio.RML.ViewModels { Lab lab = new Lab(L, A, B); Rgb rgb = lab.To(); - _red = rgb.R; - _green = rgb.G; - _blue = rgb.B; + _red = (int)rgb.R; + _green = (int)rgb.G; + _blue = (int)rgb.B; } _color = Color.FromRgb((byte)Red, (byte)Green, (byte)Blue); diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/Views/RmlView.xaml b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/Views/RmlView.xaml index 628b9e402..f81ce804e 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/Views/RmlView.xaml +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/Views/RmlView.xaml @@ -179,6 +179,9 @@ + + + diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/Views/RmlsView.xaml b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/Views/RmlsView.xaml index ec1e1a78a..9f09ad248 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/Views/RmlsView.xaml +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/Views/RmlsView.xaml @@ -61,6 +61,8 @@ + + -- cgit v1.3.1