diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2012-11-18 22:24:56 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2012-11-18 22:24:56 (GMT) |
| commit | f3307e47a850091d9ef16da015c31fd2bb71e44b (patch) | |
| tree | 56676bc804a618e4f1809eb62f9e4ea77d6b8e34 /src | |
| parent | 045f5e14c287a2b44e963268365f48f862f0e23f (diff) | |
| download | powder-f3307e47a850091d9ef16da015c31fd2bb71e44b.zip powder-f3307e47a850091d9ef16da015c31fd2bb71e44b.tar.gz | |
Helper function for linear interpolation
Diffstat (limited to 'src')
| -rw-r--r-- | src/Misc.h | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -26,6 +26,13 @@ static char hex[] = "0123456789ABCDEF"; char *exe_name(void); +//Linear interpolation +template <typename T> inline T LinearInterpolate(T val1, T val2, T lowerCoord, T upperCoord, T coord) +{ + if(lowerCoord == upperCoord) return val1; + return (((val2 - val1) / (upperCoord - lowerCoord)) * (coord - lowerCoord)) + val1; +} + //Signum function int isign(float i); |
