MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ map()

template<typename T >
constexpr T MayaFlux::Kinesis::map ( x,
in_lo,
in_hi,
out_lo,
out_hi 
)
constexprnoexcept

Map x from [in_lo, in_hi] to [out_lo, out_hi], unclamped.

Values outside [in_lo, in_hi] extrapolate linearly. Use map_clamped() when the output must stay within [out_lo, out_hi].

Degenerate input range (in_lo == in_hi) returns out_lo.

Definition at line 18 of file Scalar.hpp.

19{
20 const T in_range = in_hi - in_lo;
21 if (in_range == T { 0 })
22 return out_lo;
23 return out_lo + (x - in_lo) / in_range * (out_hi - out_lo);
24}

Referenced by map_clamped().

+ Here is the caller graph for this function: