Class evam::CurveDecor¶
template <class TMotor, signed short tBend>
ClassList > evam > CurveDecor
Decorator that applies an S-curve (nonlinear) transformation to the control signal. More...
#include <evamCurveDecor.h>
Inherits the following classes: TMotor
Public Functions¶
| Type | Name |
|---|---|
| CurveDecor () |
|
| CurveDecor (CurveConfig config, Args... args) |
|
| signed short | GetBend () const Get the current bend intensity value. |
| void | Go (signed short aValue) Apply the curved transformation and pass to the underlying motor. |
| void | SetBend (signed short aValue) Set the bend intensity at runtime. |
Detailed Description¶
Converts linear input into an S-shaped curve, useful for smoother starts and finer control in the mid-range. Positive bend values create a softer start, negative values create a sharper initial response.
Template parameters:
MotorBase motor class (must implement Go(signed short))kBendBend intensity. Range: -10..10. 0 = linear.
Public Functions Documentation¶
function CurveDecor [1/2]¶
inline evam::CurveDecor::CurveDecor ()
function CurveDecor [2/2]¶
template<typename... Args>
inline evam::CurveDecor::CurveDecor (
CurveConfig config,
Args... args
)
function GetBend¶
Get the current bend intensity value.
inline signed short evam::CurveDecor::GetBend () const
Returns:
Current bend value in range -10..10.
function Go¶
Apply the curved transformation and pass to the underlying motor.
inline void evam::CurveDecor::Go (
signed short aValue
)
Parameters:
aValueInput control value, range -1000..1000.
function SetBend¶
Set the bend intensity at runtime.
inline void evam::CurveDecor::SetBend (
signed short aValue
)
Parameters:
aValueBend value, clamped to -10..10.
The documentation for this class was generated from the following file src/evamCurveDecor.h