.class public Lcom/polites/android/MoveAnimation; .super Ljava/lang/Object; .source "MoveAnimation.java" # interfaces .implements Lcom/polites/android/Animation; # instance fields .field private animationTimeMS:J .field private firstFrame:Z .field private moveAnimationListener:Lcom/polites/android/MoveAnimationListener; .field private startX:F .field private startY:F .field private targetX:F .field private targetY:F .field private totalTime:J # direct methods .method public constructor ()V .registers 3 .line 23 invoke-direct {p0}, Ljava/lang/Object;->()V const/4 v0, 0x1 .line 25 iput-boolean v0, p0, Lcom/polites/android/MoveAnimation;->firstFrame:Z const-wide/16 v0, 0x64 .line 32 iput-wide v0, p0, Lcom/polites/android/MoveAnimation;->animationTimeMS:J const-wide/16 v0, 0x0 .line 33 iput-wide v0, p0, Lcom/polites/android/MoveAnimation;->totalTime:J return-void .end method # virtual methods .method public getAnimationTimeMS()J .registers 3 .line 97 iget-wide v0, p0, Lcom/polites/android/MoveAnimation;->animationTimeMS:J return-wide v0 .end method .method public getTargetX()F .registers 2 .line 79 iget v0, p0, Lcom/polites/android/MoveAnimation;->targetX:F return v0 .end method .method public getTargetY()F .registers 2 .line 89 iget v0, p0, Lcom/polites/android/MoveAnimation;->targetY:F return v0 .end method .method public reset()V .registers 3 const/4 v0, 0x1 .line 73 iput-boolean v0, p0, Lcom/polites/android/MoveAnimation;->firstFrame:Z const-wide/16 v0, 0x0 .line 74 iput-wide v0, p0, Lcom/polites/android/MoveAnimation;->totalTime:J return-void .end method .method public setAnimationTimeMS(J)V .registers 3 .line 101 iput-wide p1, p0, Lcom/polites/android/MoveAnimation;->animationTimeMS:J return-void .end method .method public setMoveAnimationListener(Lcom/polites/android/MoveAnimationListener;)V .registers 2 .line 105 iput-object p1, p0, Lcom/polites/android/MoveAnimation;->moveAnimationListener:Lcom/polites/android/MoveAnimationListener; return-void .end method .method public setTargetX(F)V .registers 2 .line 84 iput p1, p0, Lcom/polites/android/MoveAnimation;->targetX:F return-void .end method .method public setTargetY(F)V .registers 2 .line 93 iput p1, p0, Lcom/polites/android/MoveAnimation;->targetY:F return-void .end method .method public update(Lcom/polites/android/GestureImageView;J)Z .registers 7 .line 42 iget-wide v0, p0, Lcom/polites/android/MoveAnimation;->totalTime:J add-long/2addr v0, p2 iput-wide v0, p0, Lcom/polites/android/MoveAnimation;->totalTime:J .line 44 iget-boolean p2, p0, Lcom/polites/android/MoveAnimation;->firstFrame:Z const/4 p3, 0x0 if-eqz p2, :cond_18 .line 45 iput-boolean p3, p0, Lcom/polites/android/MoveAnimation;->firstFrame:Z .line 46 invoke-virtual {p1}, Lcom/polites/android/GestureImageView;->getImageX()F move-result p2 iput p2, p0, Lcom/polites/android/MoveAnimation;->startX:F .line 47 invoke-virtual {p1}, Lcom/polites/android/GestureImageView;->getImageY()F move-result p1 iput p1, p0, Lcom/polites/android/MoveAnimation;->startY:F .line 50 :cond_18 iget-wide p1, p0, Lcom/polites/android/MoveAnimation;->totalTime:J iget-wide v0, p0, Lcom/polites/android/MoveAnimation;->animationTimeMS:J cmp-long v2, p1, v0 if-gez v2, :cond_3a long-to-float p1, p1 long-to-float p2, v0 div-float/2addr p1, p2 .line 54 iget p2, p0, Lcom/polites/android/MoveAnimation;->targetX:F iget p3, p0, Lcom/polites/android/MoveAnimation;->startX:F sub-float/2addr p2, p3 mul-float/2addr p2, p1 add-float/2addr p2, p3 .line 55 iget p3, p0, Lcom/polites/android/MoveAnimation;->targetY:F iget v0, p0, Lcom/polites/android/MoveAnimation;->startY:F sub-float/2addr p3, v0 mul-float/2addr p3, p1 add-float/2addr p3, v0 .line 57 iget-object p1, p0, Lcom/polites/android/MoveAnimation;->moveAnimationListener:Lcom/polites/android/MoveAnimationListener; if-eqz p1, :cond_38 .line 58 invoke-interface {p1, p2, p3}, Lcom/polites/android/MoveAnimationListener;->onMove(FF)V :cond_38 const/4 p1, 0x1 return p1 .line 64 :cond_3a iget-object p1, p0, Lcom/polites/android/MoveAnimation;->moveAnimationListener:Lcom/polites/android/MoveAnimationListener; if-eqz p1, :cond_45 .line 65 iget p2, p0, Lcom/polites/android/MoveAnimation;->targetX:F iget v0, p0, Lcom/polites/android/MoveAnimation;->targetY:F invoke-interface {p1, p2, v0}, Lcom/polites/android/MoveAnimationListener;->onMove(FF)V :cond_45 return p3 .end method