discord-jadx/app/src/main/java/androidx/constraintlayout/motion/utils/CurveFit.java

82 lines
2.5 KiB
Java

package androidx.constraintlayout.motion.utils;
public abstract class CurveFit {
public static final int CONSTANT = 2;
public static final int LINEAR = 1;
public static final int SPLINE = 0;
public static class Constant extends CurveFit {
public double mTime;
public double[] mValue;
public Constant(double d, double[] dArr) {
this.mTime = d;
this.mValue = dArr;
}
@Override // androidx.constraintlayout.motion.utils.CurveFit
public double getPos(double d, int i) {
return this.mValue[i];
}
@Override // androidx.constraintlayout.motion.utils.CurveFit
public void getPos(double d, double[] dArr) {
double[] dArr2 = this.mValue;
System.arraycopy(dArr2, 0, dArr, 0, dArr2.length);
}
@Override // androidx.constraintlayout.motion.utils.CurveFit
public void getPos(double d, float[] fArr) {
int i = 0;
while (true) {
double[] dArr = this.mValue;
if (i < dArr.length) {
fArr[i] = (float) dArr[i];
i++;
} else {
return;
}
}
}
@Override // androidx.constraintlayout.motion.utils.CurveFit
public double getSlope(double d, int i) {
return 0.0d;
}
@Override // androidx.constraintlayout.motion.utils.CurveFit
public void getSlope(double d, double[] dArr) {
for (int i = 0; i < this.mValue.length; i++) {
dArr[i] = 0.0d;
}
}
@Override // androidx.constraintlayout.motion.utils.CurveFit
public double[] getTimePoints() {
return new double[]{this.mTime};
}
}
public static CurveFit get(int i, double[] dArr, double[][] dArr2) {
if (dArr.length == 1) {
i = 2;
}
return i != 0 ? i != 2 ? new LinearCurveFit(dArr, dArr2) : new Constant(dArr[0], dArr2[0]) : new MonotonicCurveFit(dArr, dArr2);
}
public static CurveFit getArc(int[] iArr, double[] dArr, double[][] dArr2) {
return new ArcCurveFit(iArr, dArr, dArr2);
}
public abstract double getPos(double d, int i);
public abstract void getPos(double d, double[] dArr);
public abstract void getPos(double d, float[] fArr);
public abstract double getSlope(double d, int i);
public abstract void getSlope(double d, double[] dArr);
public abstract double[] getTimePoints();
}