From 2414cf9d605ab62baf1d10c365078849c5f029f5 Mon Sep 17 00:00:00 2001 From: Victoria Plitt Date: Wed, 5 Aug 2020 14:51:50 +0300 Subject: MS. Calibration Tab. Calculate target value and display in Graph . --- .../ViewModels/ColorCalibrationViewVM.cs | 34 ++++++++++++++++++++-- 1 file changed, 31 insertions(+), 3 deletions(-) (limited to 'Software/Visual_Studio/MachineStudio/Modules') diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/ColorCalibrationViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/ColorCalibrationViewVM.cs index 7d913299e..4a6895df3 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/ColorCalibrationViewVM.cs +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.RML/ViewModels/ColorCalibrationViewVM.cs @@ -250,15 +250,15 @@ namespace Tango.MachineStudio.RML.ViewModels Factor = GetLiquidFactor( ); }); + DataPoint targetPoint = GetTargetPoint(); Points.Clear(); TargetPoints.Clear(); To = 0; From = 0; - Measurements.ToList().ForEach(x =>{ - Points.Add(new DataPoint(x.Ink, x.L)); - TargetPoints.Add(new DataPoint(x.Ink,Factor)); }); + Measurements.ToList().ForEach(x =>{ Points.Add(new DataPoint(x.Ink, labType == "L" ? x.L : x.B)); + TargetPoints.Add(new DataPoint(x.Ink, targetPoint.Y)); }); _to = labType == "L"? 100 : 128; _from = labType == "L" ? 0 : -127; @@ -271,6 +271,34 @@ namespace Tango.MachineStudio.RML.ViewModels } + private DataPoint GetTargetPoint() + { + var listValues = Measurements.ToList(); + if (listValues.Count == 0 || Factor <=0) + return new DataPoint(0, 0); + + string labType = ColorCalibrationExt.DisplayLiquidTypeToLABType[_liquidType.Type]; + + var left = listValues.Where(y => y.Ink == listValues.Min(x => x.Ink)).ToList().First(); + var right = listValues.Where(y => y.Ink == listValues.Max(x => x.Ink)).ToList().First(); + // Normalize start/end to left right to make the offset calc simpler. + DataPoint leftPoint = new DataPoint(left.Ink, labType == "L" ? left.L : left.B); + DataPoint rightPoint = new DataPoint(right.Ink, labType == "L" ? right.L : right.B); + + double deltaX = rightPoint.X - leftPoint.X; + double deltaY = rightPoint.Y - leftPoint.Y; + + // prevents division by zero exceptions. + if (deltaX == 0 ) + return new DataPoint(0, 0); + + double slope = deltaY / deltaX; + double offset = leftPoint.Y - leftPoint.X * slope; + double calculatedY = Factor * slope + offset; + + return new DataPoint(Factor, calculatedY); ; + } + #endregion #region CreateLinearizationGraph -- cgit v1.3.1 From 229675e1e9a635ac2e176f823dee9f0bcfd66541 Mon Sep 17 00:00:00 2001 From: Victoria Plitt Date: Thu, 6 Aug 2020 08:05:53 +0300 Subject: Deleted Tango.MachineStudio.ColorCapture from the output folder --- .../Tango.MachineStudio.ColorCapture.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'Software/Visual_Studio/MachineStudio/Modules') diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ColorCapture/Tango.MachineStudio.ColorCapture.csproj b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ColorCapture/Tango.MachineStudio.ColorCapture.csproj index 4e6feceb5..8f37a9c2d 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ColorCapture/Tango.MachineStudio.ColorCapture.csproj +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ColorCapture/Tango.MachineStudio.ColorCapture.csproj @@ -18,7 +18,7 @@ true full false - bin\Debug\ + ..\..\..\Build\Machine Studio\Debug\ DEBUG;TRACE prompt 4 @@ -26,7 +26,7 @@ pdbonly true - bin\Release\ + ..\..\..\Build\Machine Studio\Release\ TRACE prompt 4 -- cgit v1.3.1