Mercurial > hg > ristipolku
view game/Interpolate.java @ 163:dda7152d2402
Perform scaling of button widgets.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Wed, 01 Mar 2017 12:53:45 +0200 |
parents | e8eeac403e5f |
children |
line wrap: on
line source
/* * 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)); } }