com.bulletphysics.collision.narrowphase
Class SimplexSolverInterface

java.lang.Object
  extended by com.bulletphysics.collision.narrowphase.SimplexSolverInterface
Direct Known Subclasses:
VoronoiSimplexSolver

public abstract class SimplexSolverInterface
extends Object

SimplexSolverInterface can incrementally calculate distance between origin and up to 4 vertices. Used by GJK or Linear Casting. Can be implemented by the Johnson-algorithm or alternative approaches based on voronoi regions or barycentric coordinates.


Constructor Summary
SimplexSolverInterface()
           
 
Method Summary
abstract  void addVertex(Vector3f w, Vector3f p, Vector3f q)
           
abstract  void backup_closest(Vector3f v)
           
abstract  boolean closest(Vector3f v)
           
abstract  void compute_points(Vector3f p1, Vector3f p2)
           
abstract  boolean emptySimplex()
           
abstract  boolean fullSimplex()
           
abstract  int getSimplex(Vector3f[] pBuf, Vector3f[] qBuf, Vector3f[] yBuf)
           
abstract  boolean inSimplex(Vector3f w)
           
abstract  float maxVertex()
           
abstract  int numVertices()
           
abstract  void reset()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SimplexSolverInterface

public SimplexSolverInterface()
Method Detail

reset

public abstract void reset()

addVertex

public abstract void addVertex(Vector3f w,
                               Vector3f p,
                               Vector3f q)

closest

public abstract boolean closest(Vector3f v)

maxVertex

public abstract float maxVertex()

fullSimplex

public abstract boolean fullSimplex()

getSimplex

public abstract int getSimplex(Vector3f[] pBuf,
                               Vector3f[] qBuf,
                               Vector3f[] yBuf)

inSimplex

public abstract boolean inSimplex(Vector3f w)

backup_closest

public abstract void backup_closest(Vector3f v)

emptySimplex

public abstract boolean emptySimplex()

compute_points

public abstract void compute_points(Vector3f p1,
                                    Vector3f p2)

numVertices

public abstract int numVertices()