Skip to content

Instantly share code, notes, and snippets.

@setiawanjemy88
Forked from niusounds/MatrixEvaluator.java
Created August 11, 2021 01:02
Show Gist options
  • Save setiawanjemy88/349935e3bb3f22dba5c67e66e4aaa6fb to your computer and use it in GitHub Desktop.
Save setiawanjemy88/349935e3bb3f22dba5c67e66e4aaa6fb to your computer and use it in GitHub Desktop.
Matrix to Matrix implementation
import android.animation.TypeEvaluator;
import android.graphics.Matrix;
public class MatrixEvaluator implements TypeEvaluator<Matrix> {
private Matrix evaluated = new Matrix();
private float[] values = new float[9];
private float[] startValues = new float[9];
private float[] endValues = new float[9];
@Override
public Matrix evaluate(float fraction, Matrix startValue, Matrix endValue) {
startValue.getValues(startValues);
endValue.getValues(endValues);
for (int i = 0; i < 9; i++) {
values[i] = startValues[i] * (1 - fraction) + endValues[i] * fraction;
}
evaluated.setValues(values);
return evaluated;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment