summaryrefslogtreecommitdiff
path: root/grapher/Models/Charts/ChartState
diff options
context:
space:
mode:
authorJacob Palecki <[email protected]>2021-01-18 17:39:10 -0800
committerJacob Palecki <[email protected]>2021-01-18 17:39:10 -0800
commit8c55ca08881b59943bc9dda193107cc8a117cf69 (patch)
tree8c8ea7956a69c058d1829250a189b250b2659e7b /grapher/Models/Charts/ChartState
parentFix xy anisotropy combining in gui (diff)
downloadrawaccel-8c55ca08881b59943bc9dda193107cc8a117cf69.tar.xz
rawaccel-8c55ca08881b59943bc9dda193107cc8a117cf69.zip
Refactor for new graph calculation method
Diffstat (limited to 'grapher/Models/Charts/ChartState')
-rw-r--r--grapher/Models/Charts/ChartState/ChartState.cs5
-rw-r--r--grapher/Models/Charts/ChartState/ChartStateManager.cs11
-rw-r--r--grapher/Models/Charts/ChartState/CombinedState.cs20
-rw-r--r--grapher/Models/Charts/ChartState/XYOneGraphState.cs8
-rw-r--r--grapher/Models/Charts/ChartState/XYTwoGraphState.cs11
5 files changed, 32 insertions, 23 deletions
diff --git a/grapher/Models/Charts/ChartState/ChartState.cs b/grapher/Models/Charts/ChartState/ChartState.cs
index 269d269..2a0325c 100644
--- a/grapher/Models/Charts/ChartState/ChartState.cs
+++ b/grapher/Models/Charts/ChartState/ChartState.cs
@@ -1,4 +1,5 @@
using grapher.Models.Calculations;
+using grapher.Models.Calculations.Data;
using grapher.Models.Serialized;
using System;
using System.Collections.Generic;
@@ -15,13 +16,11 @@ namespace grapher.Models.Charts.ChartState
ChartXY sensitivityChart,
ChartXY velocityChart,
ChartXY gainChart,
- AccelData accelData,
AccelCalculator calculator)
{
SensitivityChart = sensitivityChart;
VelocityChart = velocityChart;
GainChart = gainChart;
- Data = accelData;
Calculator = calculator;
TwoDotsPerGraph = false;
}
@@ -32,7 +31,7 @@ namespace grapher.Models.Charts.ChartState
public ChartXY GainChart { get; }
- public AccelData Data { get; }
+ public IAccelData Data { get; protected set; }
public AccelCalculator Calculator { get; }
diff --git a/grapher/Models/Charts/ChartState/ChartStateManager.cs b/grapher/Models/Charts/ChartState/ChartStateManager.cs
index ff4fe54..9ed54e1 100644
--- a/grapher/Models/Charts/ChartState/ChartStateManager.cs
+++ b/grapher/Models/Charts/ChartState/ChartStateManager.cs
@@ -14,21 +14,24 @@ namespace grapher.Models.Charts.ChartState
ChartXY sensitivityChart,
ChartXY velocityChart,
ChartXY gainChat,
- AccelData accelData,
- AccelCalculator accelCalculator)
+ AccelCalculator accelCalculator,
+ EstimatedPoints combined,
+ EstimatedPoints xPoints,
+ EstimatedPoints yPoints)
{
CombinedState = new CombinedState(
sensitivityChart,
velocityChart,
gainChat,
- accelData,
+ combined,
accelCalculator);
XYOneGraphState = new XYOneGraphState(
sensitivityChart,
velocityChart,
gainChat,
- accelData,
+ xPoints,
+ yPoints,
accelCalculator);
XYTwoGraphState = new XYTwoGraphState(
diff --git a/grapher/Models/Charts/ChartState/CombinedState.cs b/grapher/Models/Charts/ChartState/CombinedState.cs
index 9eadb87..7275d16 100644
--- a/grapher/Models/Charts/ChartState/CombinedState.cs
+++ b/grapher/Models/Charts/ChartState/CombinedState.cs
@@ -1,4 +1,5 @@
using grapher.Models.Calculations;
+using grapher.Models.Calculations.Data;
using grapher.Models.Serialized;
namespace grapher.Models.Charts.ChartState
@@ -9,15 +10,16 @@ namespace grapher.Models.Charts.ChartState
ChartXY sensitivityChart,
ChartXY velocityChart,
ChartXY gainChart,
- AccelData accelData,
+ EstimatedPoints points,
AccelCalculator accelCalculator)
: base(
sensitivityChart,
velocityChart,
gainChart,
- accelData,
accelCalculator)
- { }
+ {
+ Data = new AccelDataCombined(points, accelCalculator);
+ }
public override void Activate()
{
@@ -37,16 +39,16 @@ namespace grapher.Models.Charts.ChartState
public override void Bind()
{
- SensitivityChart.Bind(Data.Combined.AccelPoints);
- VelocityChart.Bind(Data.Combined.VelocityPoints);
- GainChart.Bind(Data.Combined.GainPoints);
- SensitivityChart.SetMinMax(Data.Combined.MinAccel, Data.Combined.MaxAccel);
- GainChart.SetMinMax(Data.Combined.MinGain, Data.Combined.MaxGain);
+ SensitivityChart.Bind(Data.X.AccelPoints);
+ VelocityChart.Bind(Data.X.VelocityPoints);
+ GainChart.Bind(Data.X.GainPoints);
+ SensitivityChart.SetMinMax(Data.X.MinAccel, Data.X.MaxAccel);
+ GainChart.SetMinMax(Data.X.MinGain, Data.X.MaxGain);
}
public override void Calculate(ManagedAccel accel, DriverSettings settings)
{
- Calculator.Calculate(Data.Combined, accel, settings.sensitivity.x, Calculator.SimulatedInputCombined);
+ Calculator.Calculate(Data.X, accel, settings.sensitivity.x, Calculator.SimulatedInputCombined);
}
}
}
diff --git a/grapher/Models/Charts/ChartState/XYOneGraphState.cs b/grapher/Models/Charts/ChartState/XYOneGraphState.cs
index 4a755b6..14d8850 100644
--- a/grapher/Models/Charts/ChartState/XYOneGraphState.cs
+++ b/grapher/Models/Charts/ChartState/XYOneGraphState.cs
@@ -1,4 +1,5 @@
using grapher.Models.Calculations;
+using grapher.Models.Calculations.Data;
using grapher.Models.Serialized;
namespace grapher.Models.Charts.ChartState
@@ -9,15 +10,16 @@ namespace grapher.Models.Charts.ChartState
ChartXY sensitivityChart,
ChartXY velocityChart,
ChartXY gainChart,
- AccelData accelData,
+ EstimatedPoints xPoints,
+ EstimatedPoints yPoints,
AccelCalculator accelCalculator)
: base(
sensitivityChart,
velocityChart,
gainChart,
- accelData,
accelCalculator)
{
+ Data = new AccelDataXYDirectional(xPoints, yPoints, accelCalculator);
TwoDotsPerGraph = true;
}
@@ -30,7 +32,7 @@ namespace grapher.Models.Charts.ChartState
public override void MakeDots(double x, double y, double timeInMs)
{
- Data.CalculateDotsCombinedDiffSens(x, y, timeInMs, Settings);
+ Data.CalculateDots(x, y, timeInMs);
}
public override void Bind()
diff --git a/grapher/Models/Charts/ChartState/XYTwoGraphState.cs b/grapher/Models/Charts/ChartState/XYTwoGraphState.cs
index 732ea3c..7dc2810 100644
--- a/grapher/Models/Charts/ChartState/XYTwoGraphState.cs
+++ b/grapher/Models/Charts/ChartState/XYTwoGraphState.cs
@@ -1,4 +1,5 @@
using grapher.Models.Calculations;
+using grapher.Models.Calculations.Data;
using grapher.Models.Serialized;
using System;
@@ -10,15 +11,17 @@ namespace grapher.Models.Charts.ChartState
ChartXY sensitivityChart,
ChartXY velocityChart,
ChartXY gainChart,
- AccelData accelData,
+ EstimatedPoints xPoints,
+ EstimatedPoints yPoints,
AccelCalculator accelCalculator)
: base(
sensitivityChart,
velocityChart,
gainChart,
- accelData,
accelCalculator)
- { }
+ {
+ Data = new AccelDataXYComponential(xPoints, yPoints, accelCalculator);
+ }
public override DriverSettings Settings { get; set; }
@@ -35,7 +38,7 @@ namespace grapher.Models.Charts.ChartState
public override void MakeDots(double x, double y, double timeInMs)
{
- Data.CalculateDotsXY(x, y, timeInMs);
+ Data.CalculateDots(x, y, timeInMs);
}
public override void Bind()