Easing$21.smali
.class final Lcom/github/mikephil/charting/animation/Easing$21;
.super Ljava/lang/Object;
# interfaces
.implements Lcom/github/mikephil/charting/animation/Easing$EasingFunction;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/github/mikephil/charting/animation/Easing;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>()V
.registers 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public getInterpolation(F)F
.registers 9
const/4 v0, 0x0
cmpl-float v1, p1, v0
if-nez v1, :cond_6
return v0
:cond_6
const/high16 v0, 0x3f800000 # 1.0f
cmpl-float v1, p1, v0
if-nez v1, :cond_d
return v0
:cond_d
const v1, 0x3e99999a # 0.3f
const v2, 0x3d4391d1
const-wide/high16 v3, 0x3ff0000000000000L # 1.0
invoke-static {v3, v4}, Ljava/lang/Math;->asin(D)D
move-result-wide v3
double-to-float v3, v3
mul-float v2, v2, v3
const-wide/high16 v3, 0x4000000000000000L # 2.0
const/high16 v5, -0x3ee00000 # -10.0f
mul-float v5, v5, p1
float-to-double v5, v5
invoke-static {v3, v4, v5, v6}, Ljava/lang/Math;->pow(DD)D
move-result-wide v3
double-to-float v3, v3
sub-float/2addr p1, v2
const v2, 0x40c90fdb
mul-float p1, p1, v2
div-float/2addr p1, v1
float-to-double v1, p1
invoke-static {v1, v2}, Ljava/lang/Math;->sin(D)D
move-result-wide v1
double-to-float p1, v1
mul-float v3, v3, p1
add-float/2addr v3, v0
return v3
.end method