h.smali
.class public Lcom/ss/android/downloadlib/guide/install/h;
.super Ljava/lang/Object;
.source "CubicBezierInterpolator.java"
# interfaces
.implements Landroid/view/animation/Interpolator;
# instance fields
.field private a:I
.field private final b:Landroid/graphics/PointF;
.field private final c:Landroid/graphics/PointF;
# direct methods
.method public constructor <init>(FFFF)V
.registers 6
.prologue
.line 18
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 12
const/4 v0, 0x0
iput v0, p0, Lcom/ss/android/downloadlib/guide/install/h;->a:I
.line 15
new-instance v0, Landroid/graphics/PointF;
invoke-direct {v0}, Landroid/graphics/PointF;-><init>()V
iput-object v0, p0, Lcom/ss/android/downloadlib/guide/install/h;->b:Landroid/graphics/PointF;
.line 16
new-instance v0, Landroid/graphics/PointF;
invoke-direct {v0}, Landroid/graphics/PointF;-><init>()V
iput-object v0, p0, Lcom/ss/android/downloadlib/guide/install/h;->c:Landroid/graphics/PointF;
.line 19
iget-object v0, p0, Lcom/ss/android/downloadlib/guide/install/h;->b:Landroid/graphics/PointF;
iput p1, v0, Landroid/graphics/PointF;->x:F
.line 20
iget-object v0, p0, Lcom/ss/android/downloadlib/guide/install/h;->b:Landroid/graphics/PointF;
iput p2, v0, Landroid/graphics/PointF;->y:F
.line 21
iget-object v0, p0, Lcom/ss/android/downloadlib/guide/install/h;->c:Landroid/graphics/PointF;
iput p3, v0, Landroid/graphics/PointF;->x:F
.line 22
iget-object v0, p0, Lcom/ss/android/downloadlib/guide/install/h;->c:Landroid/graphics/PointF;
iput p4, v0, Landroid/graphics/PointF;->y:F
.line 23
return-void
.end method
.method public static a(DDD)D
.registers 16
.prologue
const-wide/high16 v8, 0x4008000000000000L # 3.0
.line 52
const-wide/high16 v0, 0x3ff0000000000000L # 1.0
sub-double/2addr v0, p0
.line 53
mul-double v2, p0, p0
.line 54
mul-double v4, v0, v0
.line 55
mul-double v6, v2, p0
.line 56
mul-double/2addr v4, v8
mul-double/2addr v4, p0
mul-double/2addr v4, p2
mul-double/2addr v0, v8
mul-double/2addr v0, v2
mul-double/2addr v0, p4
add-double/2addr v0, v4
add-double/2addr v0, v6
return-wide v0
.end method
# virtual methods
.method public getInterpolation(F)F
.registers 11
.prologue
const/4 v8, 0x0
.line 27
.line 29
const/4 v0, 0x0
cmpl-float v0, p1, v0
if-nez v0, :cond_8
.line 30
iput v8, p0, Lcom/ss/android/downloadlib/guide/install/h;->a:I
.line 34
:cond_8
iget v0, p0, Lcom/ss/android/downloadlib/guide/install/h;->a:I
move v7, v0
move v0, p1
:goto_c
const/16 v1, 0x80
if-ge v7, v1, :cond_2c
.line 35
int-to-float v0, v7
const/high16 v1, 0x3c000000 # 0.0078125f
mul-float v6, v0, v1
.line 36
float-to-double v0, v6
iget-object v2, p0, Lcom/ss/android/downloadlib/guide/install/h;->b:Landroid/graphics/PointF;
iget v2, v2, Landroid/graphics/PointF;->x:F
float-to-double v2, v2
iget-object v4, p0, Lcom/ss/android/downloadlib/guide/install/h;->c:Landroid/graphics/PointF;
iget v4, v4, Landroid/graphics/PointF;->x:F
float-to-double v4, v4
invoke-static/range {v0 .. v5}, Lcom/ss/android/downloadlib/guide/install/h;->a(DDD)D
move-result-wide v0
.line 37
float-to-double v2, p1
cmpl-double v0, v0, v2
if-ltz v0, :cond_45
.line 38
iput v7, p0, Lcom/ss/android/downloadlib/guide/install/h;->a:I
move v0, v6
.line 42
:cond_2c
float-to-double v0, v0
iget-object v2, p0, Lcom/ss/android/downloadlib/guide/install/h;->b:Landroid/graphics/PointF;
iget v2, v2, Landroid/graphics/PointF;->y:F
float-to-double v2, v2
iget-object v4, p0, Lcom/ss/android/downloadlib/guide/install/h;->c:Landroid/graphics/PointF;
iget v4, v4, Landroid/graphics/PointF;->y:F
float-to-double v4, v4
invoke-static/range {v0 .. v5}, Lcom/ss/android/downloadlib/guide/install/h;->a(DDD)D
move-result-wide v0
.line 45
const/high16 v2, 0x3f800000 # 1.0f
cmpl-float v2, p1, v2
if-nez v2, :cond_43
.line 46
iput v8, p0, Lcom/ss/android/downloadlib/guide/install/h;->a:I
.line 48
:cond_43
double-to-float v0, v0
return v0
.line 34
:cond_45
add-int/lit8 v0, v7, 0x1
move v7, v0
move v0, v6
goto :goto_c
.end method