summaryrefslogtreecommitdiff
path: root/grapher/Models
diff options
context:
space:
mode:
authorJacob Palecki <[email protected]>2021-07-03 15:30:47 -0700
committerJacob Palecki <[email protected]>2021-07-03 15:30:47 -0700
commit9a8042fe9c7506d0a41e3c635641d8d9e2424edc (patch)
tree69c2b3916978eb5d2ae98c4602e285546e76d217 /grapher/Models
parentGuide updates and accel type choice fixed (diff)
downloadrawaccel-9a8042fe9c7506d0a41e3c635641d8d9e2424edc.tar.xz
rawaccel-9a8042fe9c7506d0a41e3c635641d8d9e2424edc.zip
Handle power\exponent correctly in GUI
Diffstat (limited to 'grapher/Models')
-rw-r--r--grapher/Models/Options/AccelTypeOptions.cs28
1 files changed, 25 insertions, 3 deletions
diff --git a/grapher/Models/Options/AccelTypeOptions.cs b/grapher/Models/Options/AccelTypeOptions.cs
index 02f4acb..f97df2d 100644
--- a/grapher/Models/Options/AccelTypeOptions.cs
+++ b/grapher/Models/Options/AccelTypeOptions.cs
@@ -245,7 +245,7 @@ namespace grapher
Acceleration.SetActiveValue(AccelerationParameterFromArgs(ref args));
Scale.SetActiveValue(args.scale);
Limit.SetActiveValue(args.limit);
- Exponent.SetActiveValue(args.exponent);
+ Exponent.SetActiveValue(ExponentParameterFromArgs(ref args));
Midpoint.SetActiveValue(args.midpoint);
LutPanel.SetActiveValues(args.tableData.points, args.tableData.length);
LutApply.SetActiveValue(args.tableData.velocity);
@@ -307,7 +307,17 @@ namespace grapher
if (Scale.Visible) args.scale = Scale.Field.Data;
if (Cap.Visible) args.cap = Cap.Field.Data;
if (Limit.Visible) args.limit = Limit.Field.Data;
- if (Exponent.Visible) args.exponent = Exponent.Field.Data;
+ if (Exponent.Visible)
+ {
+ if (args.mode == AccelMode.classic)
+ {
+ args.power = Exponent.Field.Data;
+ }
+ else
+ {
+ args.exponent = Exponent.Field.Data;
+ }
+ }
if (Offset.Visible) args.offset = Offset.Field.Data;
if (Midpoint.Visible) args.midpoint = Midpoint.Field.Data;
if (Weight.Visible) args.weight = Weight.Field.Data;
@@ -387,7 +397,7 @@ namespace grapher
switch (args.mode)
{
- case AccelMode.classic: return (args.exponent == 2) ? Linear : Classic;
+ case AccelMode.classic: return (args.power == 2) ? Linear : Classic;
case AccelMode.jump: return Jump;
case AccelMode.natural: return Natural;
case AccelMode.motivity: return Motivity;
@@ -413,6 +423,18 @@ namespace grapher
}
}
+ private double ExponentParameterFromArgs(ref AccelArgs args)
+ {
+ if (args.mode == AccelMode.classic)
+ {
+ return args.power;
+ }
+ else
+ {
+ return args.exponent;
+ }
+ }
+
#endregion Methods
}
}