.class public Lcom/moji/circleprogress/Bubble; .super Ljava/lang/Object; .source "Bubble.java" # instance fields .field public a:Z .field private b:I .field private c:D .field private d:D .field private e:D .field private f:F .field private g:F .field private h:F .field private i:F .field private j:Landroid/graphics/Paint; # direct methods .method public constructor (IIIIII)V .locals 8 .line 47 invoke-direct {p0}, Ljava/lang/Object;->()V const/4 v0, 0x0 .line 48 iput-boolean v0, p0, Lcom/moji/circleprogress/Bubble;->a:Z .line 49 new-instance v0, Landroid/graphics/Paint; invoke-direct {v0}, Landroid/graphics/Paint;->()V iput-object v0, p0, Lcom/moji/circleprogress/Bubble;->j:Landroid/graphics/Paint; .line 50 iget-object v0, p0, Lcom/moji/circleprogress/Bubble;->j:Landroid/graphics/Paint; invoke-virtual {v0, p4}, Landroid/graphics/Paint;->setColor(I)V .line 51 iget-object p4, p0, Lcom/moji/circleprogress/Bubble;->j:Landroid/graphics/Paint; sget-object v0, Landroid/graphics/Paint$Style;->FILL:Landroid/graphics/Paint$Style; invoke-virtual {p4, v0}, Landroid/graphics/Paint;->setStyle(Landroid/graphics/Paint$Style;)V .line 52 iget-object p4, p0, Lcom/moji/circleprogress/Bubble;->j:Landroid/graphics/Paint; const/4 v0, 0x1 invoke-virtual {p4, v0}, Landroid/graphics/Paint;->setAntiAlias(Z)V const/4 v2, 0x1 move-object v1, p0 move v3, p1 move v4, p2 move v5, p3 move v6, p5 move v7, p6 .line 53 invoke-virtual/range {v1 .. v7}, Lcom/moji/circleprogress/Bubble;->a(ZIIIII)V return-void .end method .method public static a(II)I .locals 4 sub-int/2addr p1, p0 .line 37 invoke-static {}, Ljava/lang/Math;->random()D move-result-wide v0 const-wide v2, 0x412e848000000000L # 1000000.0 mul-double v0, v0, v2 invoke-static {v0, v1}, Ljava/lang/Math;->ceil(D)D move-result-wide v0 int-to-double v2, p1 invoke-static {v2, v3}, Ljava/lang/Double;->isNaN(D)Z rem-double/2addr v0, v2 double-to-int p1, v0 add-int/2addr p1, p0 return p1 .end method # virtual methods .method public a(IF)V .locals 10 .line 93 iget p2, p0, Lcom/moji/circleprogress/Bubble;->h:F float-to-double v0, p2 invoke-static {v0, v1}, Ljava/lang/Math;->log(D)D move-result-wide v0 const-wide/high16 v2, 0x3ff0000000000000L # 1.0 mul-double v0, v0, v2 .line 94 iget p2, p0, Lcom/moji/circleprogress/Bubble;->g:F float-to-double v2, p2 invoke-static {v2, v3}, Ljava/lang/Double;->isNaN(D)Z sub-double/2addr v2, v0 double-to-float p2, v2 iput p2, p0, Lcom/moji/circleprogress/Bubble;->g:F .line 95 iget p2, p0, Lcom/moji/circleprogress/Bubble;->f:F float-to-double v2, p2 iget-wide v4, p0, Lcom/moji/circleprogress/Bubble;->c:D iget-wide v6, p0, Lcom/moji/circleprogress/Bubble;->d:D iget p2, p0, Lcom/moji/circleprogress/Bubble;->b:I add-int/lit8 v8, p2, 0x1 iput v8, p0, Lcom/moji/circleprogress/Bubble;->b:I int-to-double v8, p2 invoke-static {v8, v9}, Ljava/lang/Double;->isNaN(D)Z mul-double v8, v8, v0 mul-double v6, v6, v8 invoke-static {v6, v7}, Ljava/lang/Math;->sin(D)D move-result-wide v0 mul-double v4, v4, v0 iget-wide v0, p0, Lcom/moji/circleprogress/Bubble;->e:D add-double/2addr v4, v0 invoke-static {v2, v3}, Ljava/lang/Double;->isNaN(D)Z add-double/2addr v2, v4 double-to-float p2, v2 iput p2, p0, Lcom/moji/circleprogress/Bubble;->f:F .line 96 iget p2, p0, Lcom/moji/circleprogress/Bubble;->h:F iget v0, p0, Lcom/moji/circleprogress/Bubble;->i:F cmpg-float p2, p2, v0 if-gez p2, :cond_0 .line 97 iget p2, p0, Lcom/moji/circleprogress/Bubble;->h:F iget v0, p0, Lcom/moji/circleprogress/Bubble;->i:F int-to-float p1, p1 const/high16 v1, 0x41f00000 # 30.0f div-float/2addr p1, v1 iget v1, p0, Lcom/moji/circleprogress/Bubble;->h:F mul-float p1, p1, v1 div-float/2addr v0, p1 add-float/2addr p2, v0 iput p2, p0, Lcom/moji/circleprogress/Bubble;->h:F .line 98 iget p1, p0, Lcom/moji/circleprogress/Bubble;->h:F iget p2, p0, Lcom/moji/circleprogress/Bubble;->i:F cmpl-float p1, p1, p2 if-lez p1, :cond_0 iget p1, p0, Lcom/moji/circleprogress/Bubble;->i:F iput p1, p0, Lcom/moji/circleprogress/Bubble;->h:F :cond_0 return-void .end method .method public a(Landroid/graphics/Canvas;)V .locals 4 .line 127 iget v0, p0, Lcom/moji/circleprogress/Bubble;->f:F iget v1, p0, Lcom/moji/circleprogress/Bubble;->g:F iget v2, p0, Lcom/moji/circleprogress/Bubble;->h:F iget-object v3, p0, Lcom/moji/circleprogress/Bubble;->j:Landroid/graphics/Paint; invoke-virtual {p1, v0, v1, v2, v3}, Landroid/graphics/Canvas;->drawCircle(FFFLandroid/graphics/Paint;)V return-void .end method .method public a(ZIIIII)V .locals 0 const/4 p2, 0x0 if-eqz p1, :cond_0 int-to-float p1, p3 .line 70 iput p1, p0, Lcom/moji/circleprogress/Bubble;->g:F goto :goto_0 :cond_0 const/16 p1, 0x15 .line 73 invoke-static {p2, p1}, Lcom/moji/circleprogress/Bubble;->a(II)I move-result p1 add-int/lit8 p1, p1, -0xa add-int/2addr p3, p1 int-to-float p1, p3 iput p1, p0, Lcom/moji/circleprogress/Bubble;->g:F :goto_0 add-int/2addr p5, p6 int-to-float p1, p5 .line 75 iput p1, p0, Lcom/moji/circleprogress/Bubble;->f:F const/high16 p1, 0x3f800000 # 1.0f .line 76 iput p1, p0, Lcom/moji/circleprogress/Bubble;->h:F const/4 p1, 0x2 const/4 p3, 0x6 .line 77 invoke-static {p1, p3}, Lcom/moji/circleprogress/Bubble;->a(II)I move-result p1 int-to-float p1, p1 iput p1, p0, Lcom/moji/circleprogress/Bubble;->i:F .line 78 iget-object p1, p0, Lcom/moji/circleprogress/Bubble;->j:Landroid/graphics/Paint; const/16 p3, 0x32 const/16 p4, 0x96 invoke-static {p3, p4}, Lcom/moji/circleprogress/Bubble;->a(II)I move-result p3 invoke-virtual {p1, p3}, Landroid/graphics/Paint;->setAlpha(I)V .line 79 iput-boolean p2, p0, Lcom/moji/circleprogress/Bubble;->a:Z .line 80 iput p2, p0, Lcom/moji/circleprogress/Bubble;->b:I .line 81 invoke-static {}, Ljava/lang/Math;->random()D move-result-wide p1 const-wide p3, 0x3ff199999999999aL # 1.1 mul-double p1, p1, p3 iput-wide p1, p0, Lcom/moji/circleprogress/Bubble;->c:D .line 82 invoke-static {}, Ljava/lang/Math;->random()D move-result-wide p1 const-wide/high16 p3, 0x4000000000000000L # 2.0 mul-double p1, p1, p3 iput-wide p1, p0, Lcom/moji/circleprogress/Bubble;->d:D .line 83 invoke-static {}, Ljava/lang/Math;->random()D move-result-wide p1 const-wide p3, 0x3fd3333333333333L # 0.3 add-double/2addr p1, p3 iput-wide p1, p0, Lcom/moji/circleprogress/Bubble;->e:D return-void .end method .method public a(IIIII)Z .locals 2 .line 111 iget v0, p0, Lcom/moji/circleprogress/Bubble;->g:F iget v1, p0, Lcom/moji/circleprogress/Bubble;->h:F add-float/2addr v0, v1 const/high16 v1, -0x3e600000 # -20.0f cmpg-float v0, v0, v1 if-lez v0, :cond_1 iget v0, p0, Lcom/moji/circleprogress/Bubble;->g:F iget v1, p0, Lcom/moji/circleprogress/Bubble;->h:F sub-float/2addr v0, v1 int-to-float p2, p2 cmpl-float p2, v0, p2 if-gez p2, :cond_1 iget p2, p0, Lcom/moji/circleprogress/Bubble;->f:F iget v0, p0, Lcom/moji/circleprogress/Bubble;->h:F add-float/2addr p2, v0 add-int/lit8 v0, p4, 0x0 int-to-float v0, v0 cmpg-float p2, p2, v0 if-lez p2, :cond_1 iget p2, p0, Lcom/moji/circleprogress/Bubble;->f:F iget v0, p0, Lcom/moji/circleprogress/Bubble;->h:F sub-float/2addr p2, v0 add-int/2addr p4, p1 sub-int/2addr p4, p5 int-to-float p1, p4 cmpl-float p1, p2, p1 if-gez p1, :cond_1 iget p1, p0, Lcom/moji/circleprogress/Bubble;->g:F iget p2, p0, Lcom/moji/circleprogress/Bubble;->h:F sub-float/2addr p1, p2 int-to-float p2, p3 cmpg-float p1, p1, p2 if-gtz p1, :cond_0 goto :goto_0 :cond_0 const/4 p1, 0x0 return p1 :cond_1 :goto_0 const/4 p1, 0x1 return p1 .end method