diff options
| author | Jacob Palecki <[email protected]> | 2020-08-02 15:54:47 -0700 |
|---|---|---|
| committer | Jacob Palecki <[email protected]> | 2020-08-02 15:54:47 -0700 |
| commit | 529f18bd6ddbcd182fd03a13e3c07dc10162f036 (patch) | |
| tree | d71ba432d3f6a2c79ec41901f05e95eeed23aeb6 /grapher/AccelGUI.cs | |
| parent | Move logic out of forms class into accelgui class (diff) | |
| download | rawaccel-529f18bd6ddbcd182fd03a13e3c07dc10162f036.tar.xz rawaccel-529f18bd6ddbcd182fd03a13e3c07dc10162f036.zip | |
Add velocity graph
Diffstat (limited to 'grapher/AccelGUI.cs')
| -rw-r--r-- | grapher/AccelGUI.cs | 31 |
1 files changed, 24 insertions, 7 deletions
diff --git a/grapher/AccelGUI.cs b/grapher/AccelGUI.cs index d372869..9acb38e 100644 --- a/grapher/AccelGUI.cs +++ b/grapher/AccelGUI.cs @@ -25,6 +25,7 @@ namespace grapher public AccelGUI( RawAcceleration accelForm, Chart accelerationChart, + Chart velocityChart, ManagedAccel managedAccel, AccelOptions accelOptions, OptionXY sensitivity, @@ -38,6 +39,7 @@ namespace grapher { AccelForm = accelForm; AccelChart = accelerationChart; + VelocityChart = velocityChart; ManagedAcceleration = managedAccel; AccelerationOptions = accelOptions; Sensitivity = sensitivity; @@ -60,6 +62,8 @@ namespace grapher public Chart AccelChart { get; } + public Chart VelocityChart { get; } + public ManagedAccel ManagedAcceleration { get; } public AccelOptions AccelerationOptions { get; } @@ -118,7 +122,8 @@ namespace grapher public void UpdateGraph() { - var orderedPoints = new SortedDictionary<double, double>(); + var orderedAccelPoints = new SortedDictionary<double, double>(); + var orderedVelocityPoints = new SortedDictionary<double, double>(); foreach (var magnitudeData in Magnitudes) { @@ -127,20 +132,32 @@ namespace grapher var outMagnitude = Magnitude(output.Item1, output.Item2); var ratio = magnitudeData.magnitude > 0 ? outMagnitude / magnitudeData.magnitude : Sensitivity.Fields.X; - if (!orderedPoints.ContainsKey(magnitudeData.magnitude)) + if (!orderedAccelPoints.ContainsKey(magnitudeData.magnitude)) + { + orderedAccelPoints.Add(magnitudeData.magnitude, ratio); + } + + if (!orderedVelocityPoints.ContainsKey(magnitudeData.magnitude)) { - orderedPoints.Add(magnitudeData.magnitude, ratio); + orderedVelocityPoints.Add(magnitudeData.magnitude, outMagnitude); } } - var series = AccelChart.Series.FirstOrDefault(); - series.Points.Clear(); + var accelSeries = AccelChart.Series.FirstOrDefault(); + accelSeries.Points.Clear(); - foreach (var point in orderedPoints) + foreach (var point in orderedAccelPoints) { - series.Points.AddXY(point.Key, point.Value); + accelSeries.Points.AddXY(point.Key, point.Value); } + var velSeries = VelocityChart.Series.FirstOrDefault(); + velSeries.Points.Clear(); + + foreach (var point in orderedVelocityPoints) + { + velSeries.Points.AddXY(point.Key, point.Value); + } } |