View Full Version : Axis/Slider Scale
Hi,
Currently I'm having an issue with the slider of my Logitech joystick. The range is from -1 to 1 and I need to convert it to be from 0 to 1 rather than -1 to 1. How would I go about doing this? I'm using the Logitech Extreme 3D Pro and the axis number is 3. I'm using Java but I figured this is a language-wide issue, hence the post here.
Thanks!
In my experience, I've found that the slider has been unreliable. So, just watch out buddy.
The range is from -1 to 1 and I need to convert it to be from 0 to 1 rather than -1 to 1.
(stick.get() + 1) / 2
Jared gave you the answer.
If you are interested, here's the algebra to solve that kind of problem, for any input and output range, assuming you want a linear conversion from input to output:
Let x be the input and y be the output.
You want a linear conversion, so use the equation for a line:
y = mx + b
When x is -1 you want y to be 0:
0 = m(-1) + b ....(Equation1)
When x is 1 you want y to be 1:
1 = m(1) + b .....(Equation2)
You have 2 equations with two unknowns, so solve them.
Add the two equations:
1 = 2b .....=>..... b = (1/2)
Subtract Equation1 from Equation2:
1 = 2m .....=>..... m=(1/2)
So the conversion is y = (1/2)x + (1/2) = (x+1)/2
(stick.get() + 1) / 2
Jared gave you the answer.
If you are interested, here's the algebra to solve that kind of problem, for any input and output range, assuming you want a linear conversion from input to output:
Let x be the input and y be the output.
You want a linear conversion, so use the equation for a line:
y = mx + b
When x is -1 you want y to be 0:
0 = m(-1) + b ....(Equation1)
When x is 1 you want y to be 1:
1 = m(1) + b .....(Equation2)
You have 2 equations with two unknowns, so solve them.
Add the two equations:
1 = 2b .....=>..... b = (1/2)
Subtract Equation1 from Equation2:
1 = 2m .....=>..... m=(1/2)
So the conversion is y = (1/2)x + (1/2) = (x+1)/2
Thanks for that information and thanks for the great explanation, Ether. I hadn't thought of it that way (as a linear equation pair) but that actually makes sense.
Thank you!
The range is from -1 to 1 and I need to convert it to be from 0 to 1 rather than -1 to 1.
While I understand that the problem is solved, i'm still rather intrigued -- why did you feel the need to do this; have default be 0.5, and have the joystick(s) serve as a throttle to that?
vBulletin® v3.6.4, Copyright ©2000-2017, Jelsoft Enterprises Ltd.