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 Vec2
case2
private Vec2
case22
private Vec2
case3
private Vec2
case33
private Vec2
e12
private Vec2
e13
private Vec2
e23
int
m_count
Distance.SimplexVertex
m_v1
Distance.SimplexVertex
m_v2
Distance.SimplexVertex
m_v3
Distance.SimplexVertex[]
vertices
private Vec2
w1
private Vec2
w2
private Vec2
w3
-
Constructor Summary
Constructors Modifier Constructor Description private
Simplex()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
getClosestPoint(Vec2 out)
this returns pooled objects.float
getMetric()
void
getSearchDirection(Vec2 out)
void
getWitnessPoints(Vec2 pA, Vec2 pB)
void
readCache(Distance.SimplexCache cache, Distance.DistanceProxy proxyA, Transform transformA, Distance.DistanceProxy proxyB, Transform transformB)
void
solve2()
Solve a line segment using barycentric coordinates.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 trianglevoid
writeCache(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
-
-