Package org.jbox2d.collision
Class Distance.Simplex
- java.lang.Object
-
- org.jbox2d.collision.Distance.Simplex
-
- Enclosing class:
- Distance
private class Distance.Simplex extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private Vec2case2private Vec2case22private Vec2case3private Vec2case33private Vec2e12private Vec2e13private Vec2e23intm_countDistance.SimplexVertexm_v1Distance.SimplexVertexm_v2Distance.SimplexVertexm_v3Distance.SimplexVertex[]verticesprivate Vec2w1private Vec2w2private Vec2w3
-
Constructor Summary
Constructors Modifier Constructor Description privateSimplex()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidgetClosestPoint(Vec2 out)this returns pooled objects.floatgetMetric()voidgetSearchDirection(Vec2 out)voidgetWitnessPoints(Vec2 pA, Vec2 pB)voidreadCache(Distance.SimplexCache cache, Distance.DistanceProxy proxyA, Transform transformA, Distance.DistanceProxy proxyB, Transform transformB)voidsolve2()Solve a line segment using barycentric coordinates.voidsolve3()Solve a line segment using barycentric coordinates.
Possible regions:
- points[2]
- edge points[0]-points[2]
- edge points[1]-points[2]
- inside the trianglevoidwriteCache(Distance.SimplexCache cache)
-
-
-
Field Detail
-
m_v1
public final Distance.SimplexVertex m_v1
-
m_v2
public final Distance.SimplexVertex m_v2
-
m_v3
public final Distance.SimplexVertex m_v3
-
vertices
public final Distance.SimplexVertex[] vertices
-
m_count
public int m_count
-
e12
private final Vec2 e12
-
case2
private final Vec2 case2
-
case22
private final Vec2 case22
-
case3
private final Vec2 case3
-
case33
private final Vec2 case33
-
e13
private final Vec2 e13
-
e23
private final Vec2 e23
-
w1
private final Vec2 w1
-
w2
private final Vec2 w2
-
w3
private final Vec2 w3
-
-
Method Detail
-
readCache
public void readCache(Distance.SimplexCache cache, Distance.DistanceProxy proxyA, Transform transformA, Distance.DistanceProxy proxyB, Transform transformB)
-
writeCache
public void writeCache(Distance.SimplexCache cache)
-
getSearchDirection
public final void getSearchDirection(Vec2 out)
-
getClosestPoint
public void getClosestPoint(Vec2 out)
this returns pooled objects. don't keep or modify them
-
getMetric
public float getMetric()
-
solve2
public void solve2()
Solve a line segment using barycentric coordinates.
-
solve3
public void solve3()
Solve a line segment using barycentric coordinates.
Possible regions:
- points[2]
- edge points[0]-points[2]
- edge points[1]-points[2]
- inside the triangle
-
-