summaryrefslogtreecommitdiff
path: root/grapher/Models/Calculations
diff options
context:
space:
mode:
authorJacobPalecki <[email protected]>2020-09-08 16:00:05 -0700
committerGitHub <[email protected]>2020-09-08 16:00:05 -0700
commite5461fa84e65d78823d0022339fa2d8864f7e63c (patch)
treeb486ef524c93bfeb29a86403114b6805bf9decf1 /grapher/Models/Calculations
parentMerge pull request #19 from JacobPalecki/gainOffset (diff)
parentSave show last mouse value (diff)
downloadrawaccel-e5461fa84e65d78823d0022339fa2d8864f7e63c.tar.xz
rawaccel-e5461fa84e65d78823d0022339fa2d8864f7e63c.zip
Merge pull request #20 from JacobPalecki/GUI
GUI: Add By Component & Anisotropy; Remove Logarithm and Sigmoid; Delete Console; Some Refactoring
Diffstat (limited to 'grapher/Models/Calculations')
-rw-r--r--grapher/Models/Calculations/AccelCalculator.cs28
-rw-r--r--grapher/Models/Calculations/AccelChartData.cs14
-rw-r--r--grapher/Models/Calculations/AccelData.cs15
3 files changed, 39 insertions, 18 deletions
diff --git a/grapher/Models/Calculations/AccelCalculator.cs b/grapher/Models/Calculations/AccelCalculator.cs
index 102de8d..092a7aa 100644
--- a/grapher/Models/Calculations/AccelCalculator.cs
+++ b/grapher/Models/Calculations/AccelCalculator.cs
@@ -3,19 +3,12 @@ using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows.Forms;
namespace grapher.Models.Calculations
{
public class AccelCalculator
{
- public const int DefaultDPI = 1200;
- public const int DefaultPollRate = 1000;
- public const int Resolution = 100;
- public const double MaxMultiplier = 85;
- public const double XYToCombinedRatio = 1.3;
+ #region Structs
public struct MagnitudeData
{
@@ -24,6 +17,9 @@ namespace grapher.Models.Calculations
public int y;
}
+ #endregion Structs
+
+ #region Constructors
public AccelCalculator(Field dpi, Field pollRate)
{
@@ -31,6 +27,10 @@ namespace grapher.Models.Calculations
PollRate = pollRate;
}
+ #endregion Constructors
+
+ #region Properties
+
public ReadOnlyCollection<MagnitudeData> MagnitudesCombined { get; private set; }
public ReadOnlyCollection<MagnitudeData> MagnitudesX { get; private set; }
@@ -47,6 +47,10 @@ namespace grapher.Models.Calculations
private int Increment { get; set; }
+ #endregion Fields
+
+ #region Methods
+
public void Calculate(AccelData data, ManagedAccel accel, DriverSettings settings)
{
ScaleByMouseSettings();
@@ -171,12 +175,14 @@ namespace grapher.Models.Calculations
public void ScaleByMouseSettings()
{
var dpiPollFactor = DPI.Data / PollRate.Data;
- CombinedMaxVelocity = dpiPollFactor * MaxMultiplier;
- Increment = (int) Math.Floor(CombinedMaxVelocity / Resolution);
- XYMaxVelocity = CombinedMaxVelocity * 1.5;
+ CombinedMaxVelocity = dpiPollFactor * Constants.MaxMultiplier;
+ Increment = (int)Math.Floor(CombinedMaxVelocity / Constants.Resolution);
+ XYMaxVelocity = CombinedMaxVelocity * Constants.XYToCombinedRatio;
MagnitudesCombined = GetMagnitudes();
MagnitudesX = GetMagnitudesX();
MagnitudesY = GetMagnitudesY();
}
+
+ #endregion Methods
}
}
diff --git a/grapher/Models/Calculations/AccelChartData.cs b/grapher/Models/Calculations/AccelChartData.cs
index 20142a7..8c0c8ea 100644
--- a/grapher/Models/Calculations/AccelChartData.cs
+++ b/grapher/Models/Calculations/AccelChartData.cs
@@ -1,13 +1,13 @@
using System;
using System.Collections.Generic;
using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
namespace grapher.Models.Calculations
{
public class AccelChartData
{
+ #region Constructors
+
public AccelChartData()
{
AccelPoints = new SortedDictionary<double, double>();
@@ -17,6 +17,10 @@ namespace grapher.Models.Calculations
OutVelocityToPoints = new Dictionary<double, (double, double, double)>();
}
+ #endregion Constructors
+
+ #region Properties
+
public SortedDictionary<double, double> AccelPoints { get; }
public SortedDictionary<double, double> VelocityPoints { get; }
@@ -27,6 +31,10 @@ namespace grapher.Models.Calculations
public Dictionary<double, (double, double, double)> OutVelocityToPoints { get; }
+ #endregion Properties
+
+ #region Methods
+
public void Clear()
{
AccelPoints.Clear();
@@ -57,5 +65,7 @@ namespace grapher.Models.Calculations
return values;
}
}
+
+ #endregion Methods
}
}
diff --git a/grapher/Models/Calculations/AccelData.cs b/grapher/Models/Calculations/AccelData.cs
index 683c67e..eef4d01 100644
--- a/grapher/Models/Calculations/AccelData.cs
+++ b/grapher/Models/Calculations/AccelData.cs
@@ -1,15 +1,11 @@
using grapher.Models.Charts;
using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using static grapher.AccelCharts;
namespace grapher.Models.Calculations
{
public class AccelData
{
+ #region Constructors
public AccelData(
EstimatedPoints combined,
@@ -25,6 +21,10 @@ namespace grapher.Models.Calculations
EstimatedY = y;
}
+ #endregion Constructors
+
+ #region Properties
+
public AccelChartData Combined { get; }
public AccelChartData X { get; }
@@ -37,6 +37,10 @@ namespace grapher.Models.Calculations
private EstimatedPoints EstimatedY { get; }
+ #endregion Properties
+
+ #region Methods
+
public void Clear()
{
Combined.Clear();
@@ -70,5 +74,6 @@ namespace grapher.Models.Calculations
EstimatedY.Gain.Set(inYVelocity, yGain);
}
+ #endregion Methods
}
}