BLI: add double version of 'scaleform'

No functional changes. New utility.
This commit is contained in:
Germano Cavalcante 2021-08-04 10:38:03 -03:00
parent 26c2c617b4
commit e5d4a0c559
2 changed files with 10 additions and 0 deletions

View File

@ -120,6 +120,9 @@ MINLINE double interpd(double a, double b, double t);
MINLINE float ratiof(float min, float max, float pos);
MINLINE double ratiod(double min, double max, double pos);
MINLINE float scalenorm(float a, float b, float x);
MINLINE double scalenormd(double a, double b, double x);
/* NOTE: Compilers will upcast all types smaller than int to int when performing arithmetic
* operation. */
MINLINE int square_s(short a);

View File

@ -199,6 +199,13 @@ MINLINE float scalenorm(float a, float b, float x)
return (x * (b - a)) + a;
}
/* Map a normalized value, i.e. from interval [0, 1] to interval [a, b]. */
MINLINE double scalenormd(double a, double b, double x)
{
BLI_assert(x <= 1 && x >= 0);
return (x * (b - a)) + a;
}
/* Used for zoom values. */
MINLINE float power_of_2(float val)
{