From 72741ced7facf78649f072e96a35058a4b9469c5 Mon Sep 17 00:00:00 2001 From: Hannes Janetzek Date: Mon, 25 Mar 2013 07:10:00 +0100 Subject: [PATCH] smoother fling --- src/org/oscim/view/MapViewPosition.java | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/org/oscim/view/MapViewPosition.java b/src/org/oscim/view/MapViewPosition.java index 2788a9a3..1bb2ea8e 100644 --- a/src/org/oscim/view/MapViewPosition.java +++ b/src/org/oscim/view/MapViewPosition.java @@ -25,7 +25,6 @@ import org.oscim.core.PointD; import org.oscim.core.PointF; import org.oscim.core.Tile; import org.oscim.utils.FastMath; -import org.oscim.utils.Interpolation; import org.oscim.utils.Matrix4; import android.opengl.Matrix; @@ -731,12 +730,10 @@ public class MapViewPosition { } - synchronized boolean fling(long millisLeft){ + synchronized boolean fling(float adv){ - float delta = (mDuration - millisLeft) / mDuration; - float adv = Interpolation.exp5Out.apply(delta); - //adv *= Interpolation. - //float adv = delta; + //float delta = (mDuration - millisLeft) / mDuration; + adv = (float)Math.sqrt(adv); float dx = mVelocityX * adv; float dy = mVelocityY * adv; @@ -817,7 +814,7 @@ public class MapViewPosition { updatePosition(); } - if (mAnimFling && fling(millisLeft)) + if (mAnimFling && fling(adv)) changed = true; if (changed)