.class public Lcom/polites/android/MathUtils; .super Ljava/lang/Object; .source "MathUtils.java" # direct methods .method public constructor ()V .registers 1 .line 22 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method .method public static angle(FFFF)F .registers 6 sub-float/2addr p3, p1 float-to-double v0, p3 sub-float/2addr p2, p0 float-to-double p0, p2 .line 74 invoke-static {v0, v1, p0, p1}, Ljava/lang/Math;->atan2(DD)D move-result-wide p0 double-to-float p0, p0 return p0 .end method .method public static angle(Landroid/graphics/PointF;Landroid/graphics/PointF;)F .registers 4 .line 70 iget v0, p0, Landroid/graphics/PointF;->x:F iget p0, p0, Landroid/graphics/PointF;->y:F iget v1, p1, Landroid/graphics/PointF;->x:F iget p1, p1, Landroid/graphics/PointF;->y:F invoke-static {v0, p0, v1, p1}, Lcom/polites/android/MathUtils;->angle(FFFF)F move-result p0 return p0 .end method .method public static distance(FFFF)F .registers 4 sub-float/2addr p0, p2 sub-float/2addr p1, p3 mul-float/2addr p0, p0 mul-float/2addr p1, p1 add-float/2addr p0, p1 .line 39 invoke-static {p0}, Landroid/util/FloatMath;->sqrt(F)F move-result p0 return p0 .end method .method public static distance(Landroid/graphics/PointF;Landroid/graphics/PointF;)F .registers 4 .line 31 iget v0, p0, Landroid/graphics/PointF;->x:F iget v1, p1, Landroid/graphics/PointF;->x:F sub-float/2addr v0, v1 .line 32 iget p0, p0, Landroid/graphics/PointF;->y:F iget p1, p1, Landroid/graphics/PointF;->y:F sub-float/2addr p0, p1 mul-float/2addr v0, v0 mul-float/2addr p0, p0 add-float/2addr v0, p0 .line 33 invoke-static {v0}, Landroid/util/FloatMath;->sqrt(F)F move-result p0 return p0 .end method .method public static distance(Landroid/view/MotionEvent;)F .registers 5 const/4 v0, 0x0 .line 25 invoke-virtual {p0, v0}, Landroid/view/MotionEvent;->getX(I)F move-result v1 const/4 v2, 0x1 invoke-virtual {p0, v2}, Landroid/view/MotionEvent;->getX(I)F move-result v3 sub-float/2addr v1, v3 .line 26 invoke-virtual {p0, v0}, Landroid/view/MotionEvent;->getY(I)F move-result v0 invoke-virtual {p0, v2}, Landroid/view/MotionEvent;->getY(I)F move-result p0 sub-float/2addr v0, p0 mul-float/2addr v1, v1 mul-float/2addr v0, v0 add-float/2addr v1, v0 .line 27 invoke-static {v1}, Landroid/util/FloatMath;->sqrt(F)F move-result p0 return p0 .end method .method public static midpoint(FFFFLandroid/graphics/PointF;)V .registers 5 add-float/2addr p0, p2 const/high16 p2, 0x40000000 # 2.0f div-float/2addr p0, p2 .line 51 iput p0, p4, Landroid/graphics/PointF;->x:F add-float/2addr p1, p3 div-float/2addr p1, p2 .line 52 iput p1, p4, Landroid/graphics/PointF;->y:F return-void .end method .method public static midpoint(Landroid/view/MotionEvent;Landroid/graphics/PointF;)V .registers 6 const/4 v0, 0x0 .line 43 invoke-virtual {p0, v0}, Landroid/view/MotionEvent;->getX(I)F move-result v1 .line 44 invoke-virtual {p0, v0}, Landroid/view/MotionEvent;->getY(I)F move-result v0 const/4 v2, 0x1 .line 45 invoke-virtual {p0, v2}, Landroid/view/MotionEvent;->getX(I)F move-result v3 .line 46 invoke-virtual {p0, v2}, Landroid/view/MotionEvent;->getY(I)F move-result p0 .line 47 invoke-static {v1, v0, v3, p0, p1}, Lcom/polites/android/MathUtils;->midpoint(FFFFLandroid/graphics/PointF;)V return-void .end method # virtual methods .method public rotate(Landroid/graphics/PointF;Landroid/graphics/PointF;F)V .registers 9 .line 61 iget v0, p1, Landroid/graphics/PointF;->x:F .line 62 iget v1, p1, Landroid/graphics/PointF;->y:F .line 63 iget v2, p2, Landroid/graphics/PointF;->x:F .line 64 iget p2, p2, Landroid/graphics/PointF;->y:F .line 65 invoke-static {p3}, Landroid/util/FloatMath;->cos(F)F move-result v3 sub-float/2addr v0, v2 mul-float/2addr v3, v0 invoke-static {p3}, Landroid/util/FloatMath;->sin(F)F move-result v4 sub-float/2addr v1, p2 mul-float/2addr v4, v1 sub-float/2addr v3, v4 add-float/2addr v3, v2 iput v3, p1, Landroid/graphics/PointF;->x:F .line 66 invoke-static {p3}, Landroid/util/FloatMath;->sin(F)F move-result v2 mul-float/2addr v2, v0 invoke-static {p3}, Landroid/util/FloatMath;->cos(F)F move-result p3 mul-float/2addr p3, v1 add-float/2addr v2, p3 add-float/2addr v2, p2 iput v2, p1, Landroid/graphics/PointF;->y:F return-void .end method