Collision$EPCollider.smali
.class Lorg/jbox2d/collision/Collision$EPCollider;
.super Ljava/lang/Object;
.source "Collision.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lorg/jbox2d/collision/Collision;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = "EPCollider"
.end annotation
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lorg/jbox2d/collision/Collision$EPCollider$VertexType;
}
.end annotation
# instance fields
.field private final clipPoints1:[Lorg/jbox2d/collision/Collision$ClipVertex;
.field private final clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;
.field private final edge0:Lorg/jbox2d/common/Vec2;
.field private final edge1:Lorg/jbox2d/common/Vec2;
.field private final edge2:Lorg/jbox2d/common/Vec2;
.field private final edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;
.field private final ie:[Lorg/jbox2d/collision/Collision$ClipVertex;
.field final m_centroidB:Lorg/jbox2d/common/Vec2;
.field m_front:Z
.field final m_lowerLimit:Lorg/jbox2d/common/Vec2;
.field final m_normal:Lorg/jbox2d/common/Vec2;
.field final m_normal0:Lorg/jbox2d/common/Vec2;
.field final m_normal1:Lorg/jbox2d/common/Vec2;
.field final m_normal2:Lorg/jbox2d/common/Vec2;
.field final m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
.field m_radius:F
.field m_type1:Lorg/jbox2d/collision/Collision$EPCollider$VertexType;
.field m_type2:Lorg/jbox2d/collision/Collision$EPCollider$VertexType;
.field final m_upperLimit:Lorg/jbox2d/common/Vec2;
.field m_v0:Lorg/jbox2d/common/Vec2;
.field m_v1:Lorg/jbox2d/common/Vec2;
.field m_v2:Lorg/jbox2d/common/Vec2;
.field m_v3:Lorg/jbox2d/common/Vec2;
.field final m_xf:Lorg/jbox2d/common/Transform;
.field private final n:Lorg/jbox2d/common/Vec2;
.field private final perp:Lorg/jbox2d/common/Vec2;
.field private final polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;
.field private final rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
.field private final temp:Lorg/jbox2d/common/Vec2;
# direct methods
.method public constructor <init>()V
.registers 5
.prologue
const/4 v3, 0x2
.line 985
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 965
new-instance v0, Lorg/jbox2d/collision/Collision$TempPolygon;
invoke-direct {v0}, Lorg/jbox2d/collision/Collision$TempPolygon;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
.line 967
new-instance v0, Lorg/jbox2d/common/Transform;
invoke-direct {v0}, Lorg/jbox2d/common/Transform;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_xf:Lorg/jbox2d/common/Transform;
.line 968
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_centroidB:Lorg/jbox2d/common/Vec2;
.line 969
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v0:Lorg/jbox2d/common/Vec2;
.line 970
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;
.line 971
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;
.line 972
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v3:Lorg/jbox2d/common/Vec2;
.line 973
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
.line 974
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
.line 975
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
.line 976
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
.line 980
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
.line 981
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
.line 993
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge1:Lorg/jbox2d/common/Vec2;
.line 994
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->temp:Lorg/jbox2d/common/Vec2;
.line 995
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge0:Lorg/jbox2d/common/Vec2;
.line 996
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge2:Lorg/jbox2d/common/Vec2;
.line 997
new-array v0, v3, [Lorg/jbox2d/collision/Collision$ClipVertex;
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->ie:[Lorg/jbox2d/collision/Collision$ClipVertex;
.line 998
new-array v0, v3, [Lorg/jbox2d/collision/Collision$ClipVertex;
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints1:[Lorg/jbox2d/collision/Collision$ClipVertex;
.line 999
new-array v0, v3, [Lorg/jbox2d/collision/Collision$ClipVertex;
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;
.line 1000
new-instance v0, Lorg/jbox2d/collision/Collision$ReferenceFace;
invoke-direct {v0}, Lorg/jbox2d/collision/Collision$ReferenceFace;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
.line 1001
new-instance v0, Lorg/jbox2d/collision/Collision$EPAxis;
invoke-direct {v0}, Lorg/jbox2d/collision/Collision$EPAxis;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;
.line 1002
new-instance v0, Lorg/jbox2d/collision/Collision$EPAxis;
invoke-direct {v0}, Lorg/jbox2d/collision/Collision$EPAxis;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;
.line 1390
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->perp:Lorg/jbox2d/common/Vec2;
.line 1391
new-instance v0, Lorg/jbox2d/common/Vec2;
invoke-direct {v0}, Lorg/jbox2d/common/Vec2;-><init>()V
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;
.line 986
const/4 v0, 0x0
:goto_ab
if-ge v0, v3, :cond_cb
.line 987
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->ie:[Lorg/jbox2d/collision/Collision$ClipVertex;
new-instance v2, Lorg/jbox2d/collision/Collision$ClipVertex;
invoke-direct {v2}, Lorg/jbox2d/collision/Collision$ClipVertex;-><init>()V
aput-object v2, v1, v0
.line 988
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints1:[Lorg/jbox2d/collision/Collision$ClipVertex;
new-instance v2, Lorg/jbox2d/collision/Collision$ClipVertex;
invoke-direct {v2}, Lorg/jbox2d/collision/Collision$ClipVertex;-><init>()V
aput-object v2, v1, v0
.line 989
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;
new-instance v2, Lorg/jbox2d/collision/Collision$ClipVertex;
invoke-direct {v2}, Lorg/jbox2d/collision/Collision$ClipVertex;-><init>()V
aput-object v2, v1, v0
.line 986
add-int/lit8 v0, v0, 0x1
goto :goto_ab
.line 991
:cond_cb
return-void
.end method
# virtual methods
.method public collide(Lorg/jbox2d/collision/Manifold;Lorg/jbox2d/collision/shapes/EdgeShape;Lorg/jbox2d/common/Transform;Lorg/jbox2d/collision/shapes/PolygonShape;Lorg/jbox2d/common/Transform;)V
.registers 15
.prologue
.line 1007
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_xf:Lorg/jbox2d/common/Transform;
invoke-static {p3, p5, v0}, Lorg/jbox2d/common/Transform;->mulTransToOutUnsafe(Lorg/jbox2d/common/Transform;Lorg/jbox2d/common/Transform;Lorg/jbox2d/common/Transform;)V
.line 1008
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_xf:Lorg/jbox2d/common/Transform;
iget-object v1, p4, Lorg/jbox2d/collision/shapes/PolygonShape;->m_centroid:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_centroidB:Lorg/jbox2d/common/Vec2;
invoke-static {v0, v1, v2}, Lorg/jbox2d/common/Transform;->mulToOutUnsafe(Lorg/jbox2d/common/Transform;Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)V
.line 1010
iget-object v0, p2, Lorg/jbox2d/collision/shapes/EdgeShape;->m_vertex0:Lorg/jbox2d/common/Vec2;
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v0:Lorg/jbox2d/common/Vec2;
.line 1011
iget-object v0, p2, Lorg/jbox2d/collision/shapes/EdgeShape;->m_vertex1:Lorg/jbox2d/common/Vec2;
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;
.line 1012
iget-object v0, p2, Lorg/jbox2d/collision/shapes/EdgeShape;->m_vertex2:Lorg/jbox2d/common/Vec2;
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;
.line 1013
iget-object v0, p2, Lorg/jbox2d/collision/shapes/EdgeShape;->m_vertex3:Lorg/jbox2d/common/Vec2;
iput-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v3:Lorg/jbox2d/common/Vec2;
.line 1015
iget-boolean v5, p2, Lorg/jbox2d/collision/shapes/EdgeShape;->m_hasVertex0:Z
.line 1016
iget-boolean v6, p2, Lorg/jbox2d/collision/shapes/EdgeShape;->m_hasVertex3:Z
.line 1018
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge1:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;
invoke-virtual {v0, v1}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v0
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;
invoke-virtual {v0, v1}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1019
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge1:Lorg/jbox2d/common/Vec2;
invoke-virtual {v0}, Lorg/jbox2d/common/Vec2;->normalize()F
.line 1020
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge1:Lorg/jbox2d/common/Vec2;
iget v2, v2, Lorg/jbox2d/common/Vec2;->x:F
neg-float v2, v2
invoke-virtual {v0, v1, v2}, Lorg/jbox2d/common/Vec2;->set(FF)Lorg/jbox2d/common/Vec2;
.line 1021
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->temp:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_centroidB:Lorg/jbox2d/common/Vec2;
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v1
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v1
invoke-static {v0, v1}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F
move-result v7
.line 1022
const/4 v3, 0x0
const/4 v2, 0x0
.line 1023
const/4 v0, 0x0
const/4 v1, 0x0
.line 1026
if-eqz v5, :cond_8d3
.line 1027
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge0:Lorg/jbox2d/common/Vec2;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;
invoke-virtual {v0, v3}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v0
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v0:Lorg/jbox2d/common/Vec2;
invoke-virtual {v0, v3}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1028
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge0:Lorg/jbox2d/common/Vec2;
invoke-virtual {v0}, Lorg/jbox2d/common/Vec2;->normalize()F
.line 1029
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge0:Lorg/jbox2d/common/Vec2;
iget v3, v3, Lorg/jbox2d/common/Vec2;->y:F
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge0:Lorg/jbox2d/common/Vec2;
iget v4, v4, Lorg/jbox2d/common/Vec2;->x:F
neg-float v4, v4
invoke-virtual {v0, v3, v4}, Lorg/jbox2d/common/Vec2;->set(FF)Lorg/jbox2d/common/Vec2;
.line 1030
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge0:Lorg/jbox2d/common/Vec2;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge1:Lorg/jbox2d/common/Vec2;
invoke-static {v0, v3}, Lorg/jbox2d/common/Vec2;->cross(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F
move-result v0
const/4 v3, 0x0
cmpl-float v0, v0, v3
if-ltz v0, :cond_160
const/4 v0, 0x1
.line 1031
:goto_8a
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->temp:Lorg/jbox2d/common/Vec2;
iget-object v8, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_centroidB:Lorg/jbox2d/common/Vec2;
invoke-virtual {v4, v8}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v4
iget-object v8, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v0:Lorg/jbox2d/common/Vec2;
invoke-virtual {v4, v8}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v4
invoke-static {v3, v4}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F
move-result v3
move v4, v3
move v3, v0
.line 1035
:goto_a0
if-eqz v6, :cond_8cf
.line 1036
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge2:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v3:Lorg/jbox2d/common/Vec2;
invoke-virtual {v0, v1}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v0
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;
invoke-virtual {v0, v1}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1037
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge2:Lorg/jbox2d/common/Vec2;
invoke-virtual {v0}, Lorg/jbox2d/common/Vec2;->normalize()F
.line 1038
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge2:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge2:Lorg/jbox2d/common/Vec2;
iget v2, v2, Lorg/jbox2d/common/Vec2;->x:F
neg-float v2, v2
invoke-virtual {v0, v1, v2}, Lorg/jbox2d/common/Vec2;->set(FF)Lorg/jbox2d/common/Vec2;
.line 1039
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge1:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edge2:Lorg/jbox2d/common/Vec2;
invoke-static {v0, v1}, Lorg/jbox2d/common/Vec2;->cross(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F
move-result v0
const/4 v1, 0x0
cmpl-float v0, v0, v1
if-lez v0, :cond_163
const/4 v0, 0x1
.line 1040
:goto_d0
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->temp:Lorg/jbox2d/common/Vec2;
iget-object v8, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_centroidB:Lorg/jbox2d/common/Vec2;
invoke-virtual {v2, v8}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v2
iget-object v8, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;
invoke-virtual {v2, v8}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v2
invoke-static {v1, v2}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F
move-result v1
.line 1044
:goto_e4
if-eqz v5, :cond_329
if-eqz v6, :cond_329
.line 1045
if-eqz v3, :cond_19f
if-eqz v0, :cond_19f
.line 1046
const/4 v0, 0x0
cmpl-float v0, v4, v0
if-gez v0, :cond_fb
const/4 v0, 0x0
cmpl-float v0, v7, v0
if-gez v0, :cond_fb
const/4 v0, 0x0
cmpl-float v0, v1, v0
if-ltz v0, :cond_166
:cond_fb
const/4 v0, 0x1
:goto_fc
iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
.line 1047
iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
if-eqz v0, :cond_168
.line 1048
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1049
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1050
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1051
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1052
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1053
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1206
:goto_132
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget v1, p4, Lorg/jbox2d/collision/shapes/PolygonShape;->m_count:I
iput v1, v0, Lorg/jbox2d/collision/Collision$TempPolygon;->count:I
.line 1207
const/4 v0, 0x0
:goto_139
iget v1, p4, Lorg/jbox2d/collision/shapes/PolygonShape;->m_count:I
if-ge v0, v1, :cond_59d
.line 1208
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_xf:Lorg/jbox2d/common/Transform;
iget-object v2, p4, Lorg/jbox2d/collision/shapes/PolygonShape;->m_vertices:[Lorg/jbox2d/common/Vec2;
aget-object v2, v2, v0
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget-object v3, v3, Lorg/jbox2d/collision/Collision$TempPolygon;->vertices:[Lorg/jbox2d/common/Vec2;
aget-object v3, v3, v0
invoke-static {v1, v2, v3}, Lorg/jbox2d/common/Transform;->mulToOutUnsafe(Lorg/jbox2d/common/Transform;Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)V
.line 1209
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_xf:Lorg/jbox2d/common/Transform;
iget-object v1, v1, Lorg/jbox2d/common/Transform;->q:Lorg/jbox2d/common/Rot;
iget-object v2, p4, Lorg/jbox2d/collision/shapes/PolygonShape;->m_normals:[Lorg/jbox2d/common/Vec2;
aget-object v2, v2, v0
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget-object v3, v3, Lorg/jbox2d/collision/Collision$TempPolygon;->normals:[Lorg/jbox2d/common/Vec2;
aget-object v3, v3, v0
invoke-static {v1, v2, v3}, Lorg/jbox2d/common/Rot;->mulToOutUnsafe(Lorg/jbox2d/common/Rot;Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)V
.line 1207
add-int/lit8 v0, v0, 0x1
goto :goto_139
.line 1030
:cond_160
const/4 v0, 0x0
goto/16 :goto_8a
.line 1039
:cond_163
const/4 v0, 0x0
goto/16 :goto_d0
.line 1046
:cond_166
const/4 v0, 0x0
goto :goto_fc
.line 1055
:cond_168
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1056
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1057
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1058
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1059
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1060
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto :goto_132
.line 1062
:cond_19f
if-eqz v3, :cond_223
.line 1063
const/4 v0, 0x0
cmpl-float v0, v4, v0
if-gez v0, :cond_1b0
const/4 v0, 0x0
cmpl-float v0, v7, v0
if-ltz v0, :cond_1e9
const/4 v0, 0x0
cmpl-float v0, v1, v0
if-ltz v0, :cond_1e9
:cond_1b0
const/4 v0, 0x1
:goto_1b1
iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
.line 1064
iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
if-eqz v0, :cond_1eb
.line 1065
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1066
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1067
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1068
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1069
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1070
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1063
:cond_1e9
const/4 v0, 0x0
goto :goto_1b1
.line 1072
:cond_1eb
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1073
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1074
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1075
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1076
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1077
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1079
:cond_223
if-eqz v0, :cond_2a7
.line 1080
const/4 v0, 0x0
cmpl-float v0, v1, v0
if-gez v0, :cond_234
const/4 v0, 0x0
cmpl-float v0, v4, v0
if-ltz v0, :cond_26d
const/4 v0, 0x0
cmpl-float v0, v7, v0
if-ltz v0, :cond_26d
:cond_234
const/4 v0, 0x1
:goto_235
iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
.line 1081
iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
if-eqz v0, :cond_26f
.line 1082
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1083
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1084
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1085
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1086
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1087
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1080
:cond_26d
const/4 v0, 0x0
goto :goto_235
.line 1089
:cond_26f
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1090
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1091
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1092
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1093
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1094
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1097
:cond_2a7
const/4 v0, 0x0
cmpl-float v0, v4, v0
if-ltz v0, :cond_2ef
const/4 v0, 0x0
cmpl-float v0, v7, v0
if-ltz v0, :cond_2ef
const/4 v0, 0x0
cmpl-float v0, v1, v0
if-ltz v0, :cond_2ef
const/4 v0, 0x1
:goto_2b7
iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
.line 1098
iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
if-eqz v0, :cond_2f1
.line 1099
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1100
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1101
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1102
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1103
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1104
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1097
:cond_2ef
const/4 v0, 0x0
goto :goto_2b7
.line 1106
:cond_2f1
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1107
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1108
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1109
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1110
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1111
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1114
:cond_329
if-eqz v5, :cond_427
.line 1115
if-eqz v3, :cond_3aa
.line 1116
const/4 v0, 0x0
cmpl-float v0, v4, v0
if-gez v0, :cond_337
const/4 v0, 0x0
cmpl-float v0, v7, v0
if-ltz v0, :cond_372
:cond_337
const/4 v0, 0x1
:goto_338
iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
.line 1117
iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
if-eqz v0, :cond_374
.line 1118
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1119
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1120
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1121
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1122
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1123
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1116
:cond_372
const/4 v0, 0x0
goto :goto_338
.line 1125
:cond_374
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1126
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1127
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1128
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1129
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1130
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1133
:cond_3aa
const/4 v0, 0x0
cmpl-float v0, v4, v0
if-ltz v0, :cond_3ef
const/4 v0, 0x0
cmpl-float v0, v7, v0
if-ltz v0, :cond_3ef
const/4 v0, 0x1
:goto_3b5
iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
.line 1134
iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
if-eqz v0, :cond_3f1
.line 1135
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1136
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1137
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1138
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1139
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1140
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1133
:cond_3ef
const/4 v0, 0x0
goto :goto_3b5
.line 1142
:cond_3f1
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1143
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1144
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1145
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1146
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1147
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal0:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1150
:cond_427
if-eqz v6, :cond_525
.line 1151
if-eqz v0, :cond_4a8
.line 1152
const/4 v0, 0x0
cmpl-float v0, v7, v0
if-gez v0, :cond_435
const/4 v0, 0x0
cmpl-float v0, v1, v0
if-ltz v0, :cond_470
:cond_435
const/4 v0, 0x1
:goto_436
iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
.line 1153
iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
if-eqz v0, :cond_472
.line 1154
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1155
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1156
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1157
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1158
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1159
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1152
:cond_470
const/4 v0, 0x0
goto :goto_436
.line 1161
:cond_472
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1162
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1163
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1164
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1165
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1166
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1169
:cond_4a8
const/4 v0, 0x0
cmpl-float v0, v7, v0
if-ltz v0, :cond_4ed
const/4 v0, 0x0
cmpl-float v0, v1, v0
if-ltz v0, :cond_4ed
const/4 v0, 0x1
:goto_4b3
iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
.line 1170
iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
if-eqz v0, :cond_4ef
.line 1171
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1172
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1173
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1174
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1175
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1176
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1169
:cond_4ed
const/4 v0, 0x0
goto :goto_4b3
.line 1178
:cond_4ef
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1179
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1180
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1181
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal2:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1182
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1183
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1187
:cond_525
const/4 v0, 0x0
cmpl-float v0, v7, v0
if-ltz v0, :cond_567
const/4 v0, 0x1
:goto_52b
iput-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
.line 1188
iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
if-eqz v0, :cond_569
.line 1189
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1190
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1191
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1192
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1193
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1194
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1187
:cond_567
const/4 v0, 0x0
goto :goto_52b
.line 1196
:cond_569
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1197
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1198
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1199
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1200
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1201
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
goto/16 :goto_132
.line 1212
:cond_59d
const/high16 v0, 0x40000000 # 2.0f
sget v1, Lorg/jbox2d/common/Settings;->polygonRadius:F
mul-float/2addr v0, v1
iput v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_radius:F
.line 1214
const/4 v0, 0x0
iput v0, p1, Lorg/jbox2d/collision/Manifold;->pointCount:I
.line 1216
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;
invoke-virtual {p0, v0}, Lorg/jbox2d/collision/Collision$EPCollider;->computeEdgeSeparation(Lorg/jbox2d/collision/Collision$EPAxis;)V
.line 1219
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;
iget-object v0, v0, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;
sget-object v1, Lorg/jbox2d/collision/Collision$EPAxis$Type;->UNKNOWN:Lorg/jbox2d/collision/Collision$EPAxis$Type;
if-ne v0, v1, :cond_5b5
.line 1369
:cond_5b4
:goto_5b4
return-void
.line 1223
:cond_5b5
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;
iget v0, v0, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F
iget v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_radius:F
cmpl-float v0, v0, v1
if-gtz v0, :cond_5b4
.line 1227
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;
invoke-virtual {p0, v0}, Lorg/jbox2d/collision/Collision$EPCollider;->computePolygonSeparation(Lorg/jbox2d/collision/Collision$EPAxis;)V
.line 1228
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;
iget-object v0, v0, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;
sget-object v1, Lorg/jbox2d/collision/Collision$EPAxis$Type;->UNKNOWN:Lorg/jbox2d/collision/Collision$EPAxis$Type;
if-eq v0, v1, :cond_5d6
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;
iget v0, v0, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F
iget v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_radius:F
cmpl-float v0, v0, v1
if-gtz v0, :cond_5b4
.line 1237
:cond_5d6
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;
iget-object v0, v0, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;
sget-object v1, Lorg/jbox2d/collision/Collision$EPAxis$Type;->UNKNOWN:Lorg/jbox2d/collision/Collision$EPAxis$Type;
if-ne v0, v1, :cond_61e
.line 1238
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;
.line 1245
:goto_5e0
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->ie:[Lorg/jbox2d/collision/Collision$ClipVertex;
const/4 v2, 0x0
aget-object v5, v1, v2
.line 1246
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->ie:[Lorg/jbox2d/collision/Collision$ClipVertex;
const/4 v2, 0x1
aget-object v6, v1, v2
.line 1248
iget-object v1, v0, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;
sget-object v2, Lorg/jbox2d/collision/Collision$EPAxis$Type;->EDGE_A:Lorg/jbox2d/collision/Collision$EPAxis$Type;
if-ne v1, v2, :cond_7c9
.line 1249
sget-object v1, Lorg/jbox2d/collision/Manifold$ManifoldType;->FACE_A:Lorg/jbox2d/collision/Manifold$ManifoldType;
iput-object v1, p1, Lorg/jbox2d/collision/Manifold;->type:Lorg/jbox2d/collision/Manifold$ManifoldType;
.line 1252
const/4 v3, 0x0
.line 1253
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget-object v2, v2, Lorg/jbox2d/collision/Collision$TempPolygon;->normals:[Lorg/jbox2d/common/Vec2;
const/4 v4, 0x0
aget-object v2, v2, v4
invoke-static {v1, v2}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F
move-result v2
.line 1254
const/4 v1, 0x1
:goto_603
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget v4, v4, Lorg/jbox2d/collision/Collision$TempPolygon;->count:I
if-ge v1, v4, :cond_638
.line 1255
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget-object v7, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget-object v7, v7, Lorg/jbox2d/collision/Collision$TempPolygon;->normals:[Lorg/jbox2d/common/Vec2;
aget-object v7, v7, v1
invoke-static {v4, v7}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F
move-result v4
.line 1256
cmpg-float v7, v4, v2
if-gez v7, :cond_61b
move v2, v4
move v3, v1
.line 1254
:cond_61b
add-int/lit8 v1, v1, 0x1
goto :goto_603
.line 1239
:cond_61e
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;
iget v0, v0, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F
const v1, 0x3f7ae148 # 0.98f
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;
iget v2, v2, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F
mul-float/2addr v1, v2
const v2, 0x3a83126f # 0.001f
add-float/2addr v1, v2
cmpl-float v0, v0, v1
if-lez v0, :cond_635
.line 1240
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->polygonAxis:Lorg/jbox2d/collision/Collision$EPAxis;
goto :goto_5e0
.line 1242
:cond_635
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->edgeAxis:Lorg/jbox2d/collision/Collision$EPAxis;
goto :goto_5e0
.line 1263
:cond_638
add-int/lit8 v1, v3, 0x1
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget v2, v2, Lorg/jbox2d/collision/Collision$TempPolygon;->count:I
if-ge v1, v2, :cond_79b
add-int/lit8 v1, v3, 0x1
.line 1265
:goto_642
iget-object v2, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->v:Lorg/jbox2d/common/Vec2;
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget-object v4, v4, Lorg/jbox2d/collision/Collision$TempPolygon;->vertices:[Lorg/jbox2d/common/Vec2;
aget-object v4, v4, v3
invoke-virtual {v2, v4}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1266
iget-object v2, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
const/4 v4, 0x0
iput-byte v4, v2, Lorg/jbox2d/collision/ContactID;->indexA:B
.line 1267
iget-object v2, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
int-to-byte v3, v3
iput-byte v3, v2, Lorg/jbox2d/collision/ContactID;->indexB:B
.line 1268
iget-object v2, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
sget-object v3, Lorg/jbox2d/collision/ContactID$Type;->FACE:Lorg/jbox2d/collision/ContactID$Type;
invoke-virtual {v3}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I
move-result v3
int-to-byte v3, v3
iput-byte v3, v2, Lorg/jbox2d/collision/ContactID;->typeA:B
.line 1269
iget-object v2, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
sget-object v3, Lorg/jbox2d/collision/ContactID$Type;->VERTEX:Lorg/jbox2d/collision/ContactID$Type;
invoke-virtual {v3}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I
move-result v3
int-to-byte v3, v3
iput-byte v3, v2, Lorg/jbox2d/collision/ContactID;->typeB:B
.line 1271
iget-object v2, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->v:Lorg/jbox2d/common/Vec2;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget-object v3, v3, Lorg/jbox2d/collision/Collision$TempPolygon;->vertices:[Lorg/jbox2d/common/Vec2;
aget-object v3, v3, v1
invoke-virtual {v2, v3}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1272
iget-object v2, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
const/4 v3, 0x0
iput-byte v3, v2, Lorg/jbox2d/collision/ContactID;->indexA:B
.line 1273
iget-object v2, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
int-to-byte v1, v1
iput-byte v1, v2, Lorg/jbox2d/collision/ContactID;->indexB:B
.line 1274
iget-object v1, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
sget-object v2, Lorg/jbox2d/collision/ContactID$Type;->FACE:Lorg/jbox2d/collision/ContactID$Type;
invoke-virtual {v2}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I
move-result v2
int-to-byte v2, v2
iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->typeA:B
.line 1275
iget-object v1, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
sget-object v2, Lorg/jbox2d/collision/ContactID$Type;->VERTEX:Lorg/jbox2d/collision/ContactID$Type;
invoke-virtual {v2}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I
move-result v2
int-to-byte v2, v2
iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->typeB:B
.line 1277
iget-boolean v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
if-eqz v1, :cond_79e
.line 1278
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
const/4 v2, 0x0
iput v2, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I
.line 1279
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
const/4 v2, 0x1
iput v2, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->i2:I
.line 1280
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->v1:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1281
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->v2:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1282
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->normal:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1312
:goto_6c1
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideNormal1:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v2, v2, Lorg/jbox2d/collision/Collision$ReferenceFace;->normal:Lorg/jbox2d/common/Vec2;
iget v2, v2, Lorg/jbox2d/common/Vec2;->y:F
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->normal:Lorg/jbox2d/common/Vec2;
iget v3, v3, Lorg/jbox2d/common/Vec2;->x:F
neg-float v3, v3
invoke-virtual {v1, v2, v3}, Lorg/jbox2d/common/Vec2;->set(FF)Lorg/jbox2d/common/Vec2;
.line 1313
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideNormal2:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v2, v2, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideNormal1:Lorg/jbox2d/common/Vec2;
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v1
invoke-virtual {v1}, Lorg/jbox2d/common/Vec2;->negateLocal()Lorg/jbox2d/common/Vec2;
.line 1314
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v2, v2, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideNormal1:Lorg/jbox2d/common/Vec2;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->v1:Lorg/jbox2d/common/Vec2;
invoke-static {v2, v3}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F
move-result v2
iput v2, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideOffset1:F
.line 1315
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v2, v2, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideNormal2:Lorg/jbox2d/common/Vec2;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->v2:Lorg/jbox2d/common/Vec2;
invoke-static {v2, v3}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F
move-result v2
iput v2, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideOffset2:F
.line 1321
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints1:[Lorg/jbox2d/collision/Collision$ClipVertex;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->ie:[Lorg/jbox2d/collision/Collision$ClipVertex;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideNormal1:Lorg/jbox2d/common/Vec2;
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget v4, v4, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideOffset1:F
iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget v5, v5, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I
invoke-static {v1, v2, v3, v4, v5}, Lorg/jbox2d/collision/Collision;->clipSegmentToLine([Lorg/jbox2d/collision/Collision$ClipVertex;[Lorg/jbox2d/collision/Collision$ClipVertex;Lorg/jbox2d/common/Vec2;FI)I
move-result v1
.line 1323
sget v2, Lorg/jbox2d/common/Settings;->maxManifoldPoints:I
if-lt v1, v2, :cond_5b4
.line 1328
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints1:[Lorg/jbox2d/collision/Collision$ClipVertex;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideNormal2:Lorg/jbox2d/common/Vec2;
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget v4, v4, Lorg/jbox2d/collision/Collision$ReferenceFace;->sideOffset2:F
iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget v5, v5, Lorg/jbox2d/collision/Collision$ReferenceFace;->i2:I
invoke-static {v1, v2, v3, v4, v5}, Lorg/jbox2d/collision/Collision;->clipSegmentToLine([Lorg/jbox2d/collision/Collision$ClipVertex;[Lorg/jbox2d/collision/Collision$ClipVertex;Lorg/jbox2d/common/Vec2;FI)I
move-result v1
.line 1330
sget v2, Lorg/jbox2d/common/Settings;->maxManifoldPoints:I
if-lt v1, v2, :cond_5b4
.line 1335
iget-object v1, v0, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;
sget-object v2, Lorg/jbox2d/collision/Collision$EPAxis$Type;->EDGE_A:Lorg/jbox2d/collision/Collision$EPAxis$Type;
if-ne v1, v2, :cond_872
.line 1336
iget-object v1, p1, Lorg/jbox2d/collision/Manifold;->localNormal:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v2, v2, Lorg/jbox2d/collision/Collision$ReferenceFace;->normal:Lorg/jbox2d/common/Vec2;
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1337
iget-object v1, p1, Lorg/jbox2d/collision/Manifold;->localPoint:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v2, v2, Lorg/jbox2d/collision/Collision$ReferenceFace;->v1:Lorg/jbox2d/common/Vec2;
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1343
:goto_74c
const/4 v2, 0x0
.line 1344
const/4 v1, 0x0
:goto_74e
sget v3, Lorg/jbox2d/common/Settings;->maxManifoldPoints:I
if-ge v1, v3, :cond_8cb
.line 1347
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->normal:Lorg/jbox2d/common/Vec2;
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->temp:Lorg/jbox2d/common/Vec2;
iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;
aget-object v5, v5, v1
iget-object v5, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->v:Lorg/jbox2d/common/Vec2;
invoke-virtual {v4, v5}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v4
iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v5, v5, Lorg/jbox2d/collision/Collision$ReferenceFace;->v1:Lorg/jbox2d/common/Vec2;
invoke-virtual {v4, v5}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v4
invoke-static {v3, v4}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F
move-result v3
.line 1349
iget v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_radius:F
cmpg-float v3, v3, v4
if-gtz v3, :cond_798
.line 1350
iget-object v3, p1, Lorg/jbox2d/collision/Manifold;->points:[Lorg/jbox2d/collision/ManifoldPoint;
aget-object v3, v3, v2
.line 1352
iget-object v4, v0, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;
sget-object v5, Lorg/jbox2d/collision/Collision$EPAxis$Type;->EDGE_A:Lorg/jbox2d/collision/Collision$EPAxis$Type;
if-ne v4, v5, :cond_88e
.line 1354
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_xf:Lorg/jbox2d/common/Transform;
iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;
aget-object v5, v5, v1
iget-object v5, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->v:Lorg/jbox2d/common/Vec2;
iget-object v6, v3, Lorg/jbox2d/collision/ManifoldPoint;->localPoint:Lorg/jbox2d/common/Vec2;
invoke-static {v4, v5, v6}, Lorg/jbox2d/common/Transform;->mulTransToOutUnsafe(Lorg/jbox2d/common/Transform;Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)V
.line 1355
iget-object v3, v3, Lorg/jbox2d/collision/ManifoldPoint;->id:Lorg/jbox2d/collision/ContactID;
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;
aget-object v4, v4, v1
iget-object v4, v4, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
invoke-virtual {v3, v4}, Lorg/jbox2d/collision/ContactID;->set(Lorg/jbox2d/collision/ContactID;)V
.line 1364
:goto_796
add-int/lit8 v2, v2, 0x1
.line 1344
:cond_798
add-int/lit8 v1, v1, 0x1
goto :goto_74e
.line 1263
:cond_79b
const/4 v1, 0x0
goto/16 :goto_642
.line 1284
:cond_79e
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
const/4 v2, 0x1
iput v2, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I
.line 1285
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
const/4 v2, 0x0
iput v2, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->i2:I
.line 1286
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->v1:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1287
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->v2:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1288
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->normal:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal1:Lorg/jbox2d/common/Vec2;
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v1
invoke-virtual {v1}, Lorg/jbox2d/common/Vec2;->negateLocal()Lorg/jbox2d/common/Vec2;
goto/16 :goto_6c1
.line 1291
:cond_7c9
sget-object v1, Lorg/jbox2d/collision/Manifold$ManifoldType;->FACE_B:Lorg/jbox2d/collision/Manifold$ManifoldType;
iput-object v1, p1, Lorg/jbox2d/collision/Manifold;->type:Lorg/jbox2d/collision/Manifold$ManifoldType;
.line 1293
iget-object v1, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->v:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1294
iget-object v1, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
const/4 v2, 0x0
iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->indexA:B
.line 1295
iget-object v1, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
iget v2, v0, Lorg/jbox2d/collision/Collision$EPAxis;->index:I
int-to-byte v2, v2
iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->indexB:B
.line 1296
iget-object v1, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
sget-object v2, Lorg/jbox2d/collision/ContactID$Type;->VERTEX:Lorg/jbox2d/collision/ContactID$Type;
invoke-virtual {v2}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I
move-result v2
int-to-byte v2, v2
iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->typeA:B
.line 1297
iget-object v1, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
sget-object v2, Lorg/jbox2d/collision/ContactID$Type;->FACE:Lorg/jbox2d/collision/ContactID$Type;
invoke-virtual {v2}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I
move-result v2
int-to-byte v2, v2
iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->typeB:B
.line 1299
iget-object v1, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->v:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1300
iget-object v1, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
const/4 v2, 0x0
iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->indexA:B
.line 1301
iget-object v1, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
iget v2, v0, Lorg/jbox2d/collision/Collision$EPAxis;->index:I
int-to-byte v2, v2
iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->indexB:B
.line 1302
iget-object v1, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
sget-object v2, Lorg/jbox2d/collision/ContactID$Type;->VERTEX:Lorg/jbox2d/collision/ContactID$Type;
invoke-virtual {v2}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I
move-result v2
int-to-byte v2, v2
iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->typeA:B
.line 1303
iget-object v1, v6, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
sget-object v2, Lorg/jbox2d/collision/ContactID$Type;->FACE:Lorg/jbox2d/collision/ContactID$Type;
invoke-virtual {v2}, Lorg/jbox2d/collision/ContactID$Type;->ordinal()I
move-result v2
int-to-byte v2, v2
iput-byte v2, v1, Lorg/jbox2d/collision/ContactID;->typeB:B
.line 1305
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget v2, v0, Lorg/jbox2d/collision/Collision$EPAxis;->index:I
iput v2, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I
.line 1306
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I
add-int/lit8 v1, v1, 0x1
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget v3, v3, Lorg/jbox2d/collision/Collision$TempPolygon;->count:I
if-ge v1, v3, :cond_870
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I
add-int/lit8 v1, v1, 0x1
:goto_839
iput v1, v2, Lorg/jbox2d/collision/Collision$ReferenceFace;->i2:I
.line 1307
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->v1:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget-object v2, v2, Lorg/jbox2d/collision/Collision$TempPolygon;->vertices:[Lorg/jbox2d/common/Vec2;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I
aget-object v2, v2, v3
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1308
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->v2:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget-object v2, v2, Lorg/jbox2d/collision/Collision$TempPolygon;->vertices:[Lorg/jbox2d/common/Vec2;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->i2:I
aget-object v2, v2, v3
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1309
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget-object v1, v1, Lorg/jbox2d/collision/Collision$ReferenceFace;->normal:Lorg/jbox2d/common/Vec2;
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget-object v2, v2, Lorg/jbox2d/collision/Collision$TempPolygon;->normals:[Lorg/jbox2d/common/Vec2;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I
aget-object v2, v2, v3
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
goto/16 :goto_6c1
.line 1306
:cond_870
const/4 v1, 0x0
goto :goto_839
.line 1339
:cond_872
iget-object v1, p1, Lorg/jbox2d/collision/Manifold;->localNormal:Lorg/jbox2d/common/Vec2;
iget-object v2, p4, Lorg/jbox2d/collision/shapes/PolygonShape;->m_normals:[Lorg/jbox2d/common/Vec2;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I
aget-object v2, v2, v3
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1340
iget-object v1, p1, Lorg/jbox2d/collision/Manifold;->localPoint:Lorg/jbox2d/common/Vec2;
iget-object v2, p4, Lorg/jbox2d/collision/shapes/PolygonShape;->m_vertices:[Lorg/jbox2d/common/Vec2;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->rf:Lorg/jbox2d/collision/Collision$ReferenceFace;
iget v3, v3, Lorg/jbox2d/collision/Collision$ReferenceFace;->i1:I
aget-object v2, v2, v3
invoke-virtual {v1, v2}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
goto/16 :goto_74c
.line 1357
:cond_88e
iget-object v4, v3, Lorg/jbox2d/collision/ManifoldPoint;->localPoint:Lorg/jbox2d/common/Vec2;
iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;
aget-object v5, v5, v1
iget-object v5, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->v:Lorg/jbox2d/common/Vec2;
invoke-virtual {v4, v5}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
.line 1358
iget-object v4, v3, Lorg/jbox2d/collision/ManifoldPoint;->id:Lorg/jbox2d/collision/ContactID;
iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;
aget-object v5, v5, v1
iget-object v5, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
iget-byte v5, v5, Lorg/jbox2d/collision/ContactID;->typeB:B
iput-byte v5, v4, Lorg/jbox2d/collision/ContactID;->typeA:B
.line 1359
iget-object v4, v3, Lorg/jbox2d/collision/ManifoldPoint;->id:Lorg/jbox2d/collision/ContactID;
iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;
aget-object v5, v5, v1
iget-object v5, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
iget-byte v5, v5, Lorg/jbox2d/collision/ContactID;->typeA:B
iput-byte v5, v4, Lorg/jbox2d/collision/ContactID;->typeB:B
.line 1360
iget-object v4, v3, Lorg/jbox2d/collision/ManifoldPoint;->id:Lorg/jbox2d/collision/ContactID;
iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;
aget-object v5, v5, v1
iget-object v5, v5, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
iget-byte v5, v5, Lorg/jbox2d/collision/ContactID;->indexB:B
iput-byte v5, v4, Lorg/jbox2d/collision/ContactID;->indexA:B
.line 1361
iget-object v3, v3, Lorg/jbox2d/collision/ManifoldPoint;->id:Lorg/jbox2d/collision/ContactID;
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->clipPoints2:[Lorg/jbox2d/collision/Collision$ClipVertex;
aget-object v4, v4, v1
iget-object v4, v4, Lorg/jbox2d/collision/Collision$ClipVertex;->id:Lorg/jbox2d/collision/ContactID;
iget-byte v4, v4, Lorg/jbox2d/collision/ContactID;->indexA:B
iput-byte v4, v3, Lorg/jbox2d/collision/ContactID;->indexB:B
goto/16 :goto_796
.line 1368
:cond_8cb
iput v2, p1, Lorg/jbox2d/collision/Manifold;->pointCount:I
goto/16 :goto_5b4
:cond_8cf
move v0, v1
move v1, v2
goto/16 :goto_e4
:cond_8d3
move v4, v3
move v3, v0
goto/16 :goto_a0
.end method
.method public computeEdgeSeparation(Lorg/jbox2d/collision/Collision$EPAxis;)V
.registers 8
.prologue
const/4 v1, 0x0
.line 1373
sget-object v0, Lorg/jbox2d/collision/Collision$EPAxis$Type;->EDGE_A:Lorg/jbox2d/collision/Collision$EPAxis$Type;
iput-object v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;
.line 1374
iget-boolean v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_front:Z
if-eqz v0, :cond_41
move v0, v1
:goto_a
iput v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->index:I
.line 1375
const v0, 0x7f7fffff # Float.MAX_VALUE
iput v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F
.line 1376
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget v0, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1377
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget v2, v2, Lorg/jbox2d/common/Vec2;->y:F
.line 1379
:goto_19
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget v3, v3, Lorg/jbox2d/collision/Collision$TempPolygon;->count:I
if-ge v1, v3, :cond_43
.line 1380
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget-object v3, v3, Lorg/jbox2d/collision/Collision$TempPolygon;->vertices:[Lorg/jbox2d/common/Vec2;
aget-object v3, v3, v1
.line 1381
iget v4, v3, Lorg/jbox2d/common/Vec2;->x:F
iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;
iget v5, v5, Lorg/jbox2d/common/Vec2;->x:F
sub-float/2addr v4, v5
.line 1382
iget v3, v3, Lorg/jbox2d/common/Vec2;->y:F
iget-object v5, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;
iget v5, v5, Lorg/jbox2d/common/Vec2;->y:F
sub-float/2addr v3, v5
.line 1383
mul-float/2addr v4, v0
mul-float/2addr v3, v2
add-float/2addr v3, v4
.line 1384
iget v4, p1, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F
cmpg-float v4, v3, v4
if-gez v4, :cond_3e
.line 1385
iput v3, p1, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F
.line 1379
:cond_3e
add-int/lit8 v1, v1, 0x1
goto :goto_19
.line 1374
:cond_41
const/4 v0, 0x1
goto :goto_a
.line 1388
:cond_43
return-void
.end method
.method public computePolygonSeparation(Lorg/jbox2d/collision/Collision$EPAxis;)V
.registers 7
.prologue
.line 1394
sget-object v0, Lorg/jbox2d/collision/Collision$EPAxis$Type;->UNKNOWN:Lorg/jbox2d/collision/Collision$EPAxis$Type;
iput-object v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;
.line 1395
const/4 v0, -0x1
iput v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->index:I
.line 1396
const v0, -0x800001
iput v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F
.line 1398
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->perp:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v0, Lorg/jbox2d/common/Vec2;->x:F
.line 1399
iget-object v0, p0, Lorg/jbox2d/collision/Collision$EPCollider;->perp:Lorg/jbox2d/common/Vec2;
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->x:F
iput v1, v0, Lorg/jbox2d/common/Vec2;->y:F
.line 1401
const/4 v0, 0x0
:goto_1e
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget v1, v1, Lorg/jbox2d/collision/Collision$TempPolygon;->count:I
if-ge v0, v1, :cond_82
.line 1402
iget-object v1, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget-object v1, v1, Lorg/jbox2d/collision/Collision$TempPolygon;->normals:[Lorg/jbox2d/common/Vec2;
aget-object v1, v1, v0
.line 1403
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_polygonB:Lorg/jbox2d/collision/Collision$TempPolygon;
iget-object v2, v2, Lorg/jbox2d/collision/Collision$TempPolygon;->vertices:[Lorg/jbox2d/common/Vec2;
aget-object v2, v2, v0
.line 1404
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;
iget v4, v1, Lorg/jbox2d/common/Vec2;->x:F
neg-float v4, v4
iput v4, v3, Lorg/jbox2d/common/Vec2;->x:F
.line 1405
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;
iget v1, v1, Lorg/jbox2d/common/Vec2;->y:F
neg-float v1, v1
iput v1, v3, Lorg/jbox2d/common/Vec2;->y:F
.line 1409
iget v1, v2, Lorg/jbox2d/common/Vec2;->x:F
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;
iget v3, v3, Lorg/jbox2d/common/Vec2;->x:F
sub-float/2addr v1, v3
.line 1410
iget v3, v2, Lorg/jbox2d/common/Vec2;->y:F
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v1:Lorg/jbox2d/common/Vec2;
iget v4, v4, Lorg/jbox2d/common/Vec2;->y:F
sub-float/2addr v3, v4
.line 1411
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;
iget v4, v4, Lorg/jbox2d/common/Vec2;->x:F
mul-float/2addr v1, v4
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;
iget v4, v4, Lorg/jbox2d/common/Vec2;->y:F
mul-float/2addr v3, v4
add-float/2addr v1, v3
.line 1412
iget v3, v2, Lorg/jbox2d/common/Vec2;->x:F
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;
iget v4, v4, Lorg/jbox2d/common/Vec2;->x:F
sub-float/2addr v3, v4
.line 1413
iget v2, v2, Lorg/jbox2d/common/Vec2;->y:F
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_v2:Lorg/jbox2d/common/Vec2;
iget v4, v4, Lorg/jbox2d/common/Vec2;->y:F
sub-float/2addr v2, v4
.line 1414
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;
iget v4, v4, Lorg/jbox2d/common/Vec2;->x:F
mul-float/2addr v3, v4
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;
iget v4, v4, Lorg/jbox2d/common/Vec2;->y:F
mul-float/2addr v2, v4
add-float/2addr v2, v3
.line 1415
invoke-static {v1, v2}, Lorg/jbox2d/common/MathUtils;->min(FF)F
move-result v1
.line 1417
iget v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_radius:F
cmpl-float v2, v1, v2
if-lez v2, :cond_83
.line 1419
sget-object v2, Lorg/jbox2d/collision/Collision$EPAxis$Type;->EDGE_B:Lorg/jbox2d/collision/Collision$EPAxis$Type;
iput-object v2, p1, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;
.line 1420
iput v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->index:I
.line 1421
iput v1, p1, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F
.line 1442
:cond_82
return-void
.line 1426
:cond_83
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;
iget v2, v2, Lorg/jbox2d/common/Vec2;->x:F
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->perp:Lorg/jbox2d/common/Vec2;
iget v3, v3, Lorg/jbox2d/common/Vec2;->x:F
mul-float/2addr v2, v3
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;
iget v3, v3, Lorg/jbox2d/common/Vec2;->y:F
iget-object v4, p0, Lorg/jbox2d/collision/Collision$EPCollider;->perp:Lorg/jbox2d/common/Vec2;
iget v4, v4, Lorg/jbox2d/common/Vec2;->y:F
mul-float/2addr v3, v4
add-float/2addr v2, v3
const/4 v3, 0x0
cmpl-float v2, v2, v3
if-ltz v2, :cond_ba
.line 1427
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->temp:Lorg/jbox2d/common/Vec2;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;
invoke-virtual {v2, v3}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v2
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_upperLimit:Lorg/jbox2d/common/Vec2;
invoke-virtual {v2, v3}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v2
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
invoke-static {v2, v3}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F
move-result v2
sget v3, Lorg/jbox2d/common/Settings;->angularSlop:F
neg-float v3, v3
cmpg-float v2, v2, v3
if-gez v2, :cond_d5
.line 1401
:cond_b6
:goto_b6
add-int/lit8 v0, v0, 0x1
goto/16 :goto_1e
.line 1431
:cond_ba
iget-object v2, p0, Lorg/jbox2d/collision/Collision$EPCollider;->temp:Lorg/jbox2d/common/Vec2;
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->n:Lorg/jbox2d/common/Vec2;
invoke-virtual {v2, v3}, Lorg/jbox2d/common/Vec2;->set(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v2
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_lowerLimit:Lorg/jbox2d/common/Vec2;
invoke-virtual {v2, v3}, Lorg/jbox2d/common/Vec2;->subLocal(Lorg/jbox2d/common/Vec2;)Lorg/jbox2d/common/Vec2;
move-result-object v2
iget-object v3, p0, Lorg/jbox2d/collision/Collision$EPCollider;->m_normal:Lorg/jbox2d/common/Vec2;
invoke-static {v2, v3}, Lorg/jbox2d/common/Vec2;->dot(Lorg/jbox2d/common/Vec2;Lorg/jbox2d/common/Vec2;)F
move-result v2
sget v3, Lorg/jbox2d/common/Settings;->angularSlop:F
neg-float v3, v3
cmpg-float v2, v2, v3
if-ltz v2, :cond_b6
.line 1436
:cond_d5
iget v2, p1, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F
cmpl-float v2, v1, v2
if-lez v2, :cond_b6
.line 1437
sget-object v2, Lorg/jbox2d/collision/Collision$EPAxis$Type;->EDGE_B:Lorg/jbox2d/collision/Collision$EPAxis$Type;
iput-object v2, p1, Lorg/jbox2d/collision/Collision$EPAxis;->type:Lorg/jbox2d/collision/Collision$EPAxis$Type;
.line 1438
iput v0, p1, Lorg/jbox2d/collision/Collision$EPAxis;->index:I
.line 1439
iput v1, p1, Lorg/jbox2d/collision/Collision$EPAxis;->separation:F
goto :goto_b6
.end method