Mercurial > hg > ristipolku
diff game/Interpolate.java @ 162:e8eeac403e5f
Backed out changeset fb33d3796942
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Thu, 01 Dec 2016 14:33:25 +0200 |
parents | src/Interpolate.java@fb33d3796942 |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/game/Interpolate.java Thu Dec 01 14:33:25 2016 +0200 @@ -0,0 +1,26 @@ +/* + * Class for smooth non-linear interpolation between two given values in N steps + * (C) Copyright 2011 Matti 'ccr' Hämäläinen <ccr@tnsp.org> + */ +package game; + +import java.util.*; + +public class Interpolate +{ + public float start, end, steps; + + public Interpolate(float start, float end, float steps) + { + this.start = start; + this.end = end; + this.steps = steps; + } + + public float getValue(float step) + { + float n = step / steps; + float v = n * n * (3.0f - 2.0f * n); + return (start * v) + (end * (1.0f - v)); + } +}