joyhandle - sets nonlinear joypad movements, deadbands and scales
loadrt joyhandle [count=N|names=name1[,name2...]] |
The component joyhandle uses the following formula for a non linear joypad movements:
y = (scale * (a*xˆpower + b*x)) + offset
The parameters a and b are adjusted in such a way, that the function starts at (deadband,offset) and ends at (1,scale+offset).
Negative values will be treated point symmetrically to origin. Values -deadband < x < +deadband will be set to zero.
Values x > 1 and x < -1 will be skipped to ±(scale+offset). Invert transforms the function to a progressive movement.
With power one can adjust the nonlinearity (default = 2). Default for deadband is 0.
Valid values are: power >= 1.0 (reasonable values are 1.x .. 4-5, take higher power-values for higher deadbands (>0.5), if you want to start with a nearly horizontal slope), 0 <= deadband < 0.99 (reasonable 0.1).
An additional offset component can be set in special cases (default = 0).
All values can be adjusted for each instance separately.
joyhandle.N (requires a floating-point thread)
joyhandle.N.in
float in
joyhandle.N.out float out
joyhandle.N.power
float rw (default: 2.0)
joyhandle.N.deadband float rw (default:
0.)
joyhandle.N.scale float rw (default:
1.)
joyhandle.N.offset float rw (default:
0.)
joyhandle.N.inverse bit rw (default:
0)
Paul Willutzki
GPL