Here you can find the source of lerpTowards(float from, float to, float factor)
public static float lerpTowards(float from, float to, float factor)
//package com.java2s; /******************************************************************************* * Copyright 2014 See AUTHORS file./*ww w. j ava 2 s. c o m*/ * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ******************************************************************************/ public class Main { public static float lerpTowards(float from, float to, float factor) { // clamp the factor factor = Math.max(0, Math.min(1, factor)); return from * (1 - factor) + to * factor; } public static float lerpTowards(float from, float to, float factor, float limit) { float newValue = lerpTowards(from, to, factor); if (Math.abs(newValue - to) <= limit) { newValue = to; } return newValue; } }