merged most of the changes from the branch into trunk, except for COLLADA, libxml and glut glitches.

Still need to verify to make sure no unwanted renaming is introduced.
This commit is contained in:
ejcoumans
2006-09-27 20:43:51 +00:00
parent d1e9a885f3
commit eb23bb5c0c
263 changed files with 7528 additions and 6714 deletions

View File

@@ -18,42 +18,42 @@ subject to the following restrictions:
#ifndef SIMPLEX_SOLVER_INTERFACE_H
#define SIMPLEX_SOLVER_INTERFACE_H
#include "LinearMath/SimdVector3.h"
#include "LinearMath/SimdPoint3.h"
#include "LinearMath/btVector3.h"
#include "LinearMath/btPoint3.h"
#define NO_VIRTUAL_INTERFACE 1
#ifdef NO_VIRTUAL_INTERFACE
#include "btVoronoiSimplexSolver.h"
#define SimplexSolverInterface VoronoiSimplexSolver
#define btSimplexSolverInterface btVoronoiSimplexSolver
#else
/// SimplexSolverInterface can incrementally calculate distance between origin and up to 4 vertices
/// btSimplexSolverInterface 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
class SimplexSolverInterface
class btSimplexSolverInterface
{
public:
virtual ~SimplexSolverInterface() {};
virtual ~btSimplexSolverInterface() {};
virtual void reset() = 0;
virtual void addVertex(const SimdVector3& w, const SimdPoint3& p, const SimdPoint3& q) = 0;
virtual void addVertex(const btVector3& w, const btPoint3& p, const btPoint3& q) = 0;
virtual bool closest(SimdVector3& v) = 0;
virtual bool closest(btVector3& v) = 0;
virtual SimdScalar maxVertex() = 0;
virtual btScalar maxVertex() = 0;
virtual bool fullSimplex() const = 0;
virtual int getSimplex(SimdPoint3 *pBuf, SimdPoint3 *qBuf, SimdVector3 *yBuf) const = 0;
virtual int getSimplex(btPoint3 *pBuf, btPoint3 *qBuf, btVector3 *yBuf) const = 0;
virtual bool inSimplex(const SimdVector3& w) = 0;
virtual bool inSimplex(const btVector3& w) = 0;
virtual void backup_closest(SimdVector3& v) = 0;
virtual void backup_closest(btVector3& v) = 0;
virtual bool emptySimplex() const = 0;
virtual void compute_points(SimdPoint3& p1, SimdPoint3& p2) = 0;
virtual void compute_points(btPoint3& p1, btPoint3& p2) = 0;
virtual int numVertices() const =0;