KeyFrameInterpolator.smali
.class public Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;
.super Ljava/lang/Object;
.source "KeyFrameInterpolator.java"
# interfaces
.implements Landroid/view/animation/Interpolator;
# instance fields
.field private fractions:[F
.field private interpolator:Landroid/animation/TimeInterpolator;
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public varargs constructor <init>(Landroid/animation/TimeInterpolator;[F)V
.registers 3
.param p1, "interpolator" # Landroid/animation/TimeInterpolator;
.param p2, "fractions" # [F
.line 29
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 30
iput-object p1, p0, Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;->interpolator:Landroid/animation/TimeInterpolator;
.line 31
iput-object p2, p0, Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;->fractions:[F
.line 32
return-void
.end method
.method public static varargs easeInOut([F)Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;
.registers 4
.param p0, "fractions" # [F
.line 16
new-instance v0, Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;
invoke-static {}, Lim/tpelyyftgw/ui/load/animation/interpolator/Ease;->inOut()Landroid/view/animation/Interpolator;
move-result-object v1
const/4 v2, 0x0
new-array v2, v2, [F
invoke-direct {v0, v1, v2}, Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;-><init>(Landroid/animation/TimeInterpolator;[F)V
.line 17
.local v0, "interpolator":Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;
invoke-virtual {v0, p0}, Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;->setFractions([F)V
.line 18
return-object v0
.end method
.method public static varargs pathInterpolator(FFFF[F)Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;
.registers 8
.param p0, "controlX1" # F
.param p1, "controlY1" # F
.param p2, "controlX2" # F
.param p3, "controlY2" # F
.param p4, "fractions" # [F
.line 24
new-instance v0, Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;
invoke-static {p0, p1, p2, p3}, Lim/tpelyyftgw/ui/load/animation/interpolator/PathInterpolatorCompat;->create(FFFF)Landroid/view/animation/Interpolator;
move-result-object v1
const/4 v2, 0x0
new-array v2, v2, [F
invoke-direct {v0, v1, v2}, Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;-><init>(Landroid/animation/TimeInterpolator;[F)V
.line 25
.local v0, "interpolator":Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;
invoke-virtual {v0, p4}, Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;->setFractions([F)V
.line 26
return-object v0
.end method
# virtual methods
.method public getInterpolation(F)F
.registers 8
.param p1, "input" # F
.line 40
iget-object v0, p0, Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;->fractions:[F
array-length v0, v0
const/4 v1, 0x1
if-le v0, v1, :cond_2d
.line 41
const/4 v0, 0x0
.local v0, "i":I
:goto_7
iget-object v2, p0, Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;->fractions:[F
array-length v3, v2
sub-int/2addr v3, v1
if-ge v0, v3, :cond_2d
.line 42
aget v3, v2, v0
.line 43
.local v3, "start":F
add-int/lit8 v4, v0, 0x1
aget v2, v2, v4
.line 44
.local v2, "end":F
sub-float v4, v2, v3
.line 45
.local v4, "duration":F
cmpl-float v5, p1, v3
if-ltz v5, :cond_2a
cmpg-float v5, p1, v2
if-gtz v5, :cond_2a
.line 46
sub-float v1, p1, v3
div-float/2addr v1, v4
.line 47
.end local p1 # "input":F
.local v1, "input":F
iget-object p1, p0, Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;->interpolator:Landroid/animation/TimeInterpolator;
invoke-interface {p1, v1}, Landroid/animation/TimeInterpolator;->getInterpolation(F)F
move-result p1
mul-float p1, p1, v4
add-float/2addr p1, v3
return p1
.line 41
.end local v1 # "input":F
.end local v2 # "end":F
.end local v3 # "start":F
.end local v4 # "duration":F
.restart local p1 # "input":F
:cond_2a
add-int/lit8 v0, v0, 0x1
goto :goto_7
.line 52
.end local v0 # "i":I
:cond_2d
iget-object v0, p0, Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;->interpolator:Landroid/animation/TimeInterpolator;
invoke-interface {v0, p1}, Landroid/animation/TimeInterpolator;->getInterpolation(F)F
move-result v0
return v0
.end method
.method public varargs setFractions([F)V
.registers 2
.param p1, "fractions" # [F
.line 35
iput-object p1, p0, Lim/tpelyyftgw/ui/load/animation/interpolator/KeyFrameInterpolator;->fractions:[F
.line 36
return-void
.end method