Interpolation/Rescale/Float

From Second Life Wiki
Jump to: navigation, search

Summary

Function: float fScl( float from_min, float from_max, float to_min, float to_max, float from );

Rescales a value from one range to another range.
Returns a float

• float from_min Minimum of range From
• float from_max Maximum of range From
• float to_min Minimum of range To
• float to_max Maximum of range To
• float from Value in range From

Specification

float fScl(float from_min, float from_max, float to_min, float to_max, float from) {
    return to_min + ((to_max-to_min) * ((from_min-from) / (from_min-from_max)));
}
// Released into public domain. By Nexii Malthus.

Examples

float value = fScl(0.0, 1.0, -5, 15, 0.6); // value == 7