Blender
V3.3
|
#include <btGjkEpa3.h>
Classes | |
struct | sFace |
struct | sHorizon |
struct | sList |
Public Member Functions | |
EPA () | |
void | Initialize () |
eEpaStatus | Evaluate (GJK< btConvexTemplate > &gjk, const btVector3 &guess) |
bool | getedgedist (sFace *face, typename GJK< btConvexTemplate >::sSV *a, typename GJK< btConvexTemplate >::sSV *b, btScalar &dist) |
sFace * | newface (typename GJK< btConvexTemplate >::sSV *a, typename GJK< btConvexTemplate >::sSV *b, typename GJK< btConvexTemplate >::sSV *c, bool forced) |
sFace * | findbest () |
bool | expand (U pass, typename GJK< btConvexTemplate >::sSV *w, sFace *f, U e, sHorizon &horizon) |
Static Public Member Functions | |
static void | bind (sFace *fa, U ea, sFace *fb, U eb) |
static void | append (sList &list, sFace *face) |
static void | remove (sList &list, sFace *face) |
Public Attributes | |
eEpaStatus | m_status |
GJK< btConvexTemplate >::sSimplex | m_result |
btVector3 | m_normal |
btScalar | m_depth |
GJK< btConvexTemplate >::sSV | m_sv_store [EPA_MAX_VERTICES] |
sFace | m_fc_store [EPA_MAX_FACES] |
U | m_nextsv |
sList | m_hull |
sList | m_stock |
Definition at line 544 of file btGjkEpa3.h.
Definition at line 583 of file btGjkEpa3.h.
References EPA< btConvexTemplate >::Initialize().
|
inlinestatic |
Definition at line 595 of file btGjkEpa3.h.
References EPA< btConvexTemplate >::sList::count, EPA< btConvexTemplate >::sFace::l, and EPA< btConvexTemplate >::sList::root.
Referenced by EPA< btConvexTemplate >::Evaluate(), EPA< btConvexTemplate >::expand(), EPA< btConvexTemplate >::Initialize(), and EPA< btConvexTemplate >::newface().
|
inlinestatic |
Definition at line 588 of file btGjkEpa3.h.
References EPA< btConvexTemplate >::sFace::e, EPA< btConvexTemplate >::sFace::f, and fb().
Referenced by EPA< btConvexTemplate >::Evaluate(), and EPA< btConvexTemplate >::expand().
|
inline |
Definition at line 622 of file btGjkEpa3.h.
References EPA< btConvexTemplate >::append(), EPA< btConvexTemplate >::bind(), btCross(), btDot(), btSwap(), btVector3, EPA< btConvexTemplate >::sFace::c, GJK< btConvexTemplate >::sSimplex::c, EPA< btConvexTemplate >::sHorizon::cf, EPA< btConvexTemplate >::sList::count, EPA< btConvexTemplate >::sFace::d, GJK< btConvexTemplate >::det(), EPA< btConvexTemplate >::sFace::e, eEpaAccuraryReached, eEpaFallBack, eEpaInvalidHull, eEpaOutOfVertices, eEpaValid, GJK< btConvexTemplate >::EncloseOrigin(), EPA_ACCURACY, EPA_MAX_ITERATIONS, EPA_MAX_VERTICES, EPA< btConvexTemplate >::expand(), EPA< btConvexTemplate >::sFace::f, EPA< btConvexTemplate >::sHorizon::ff, EPA< btConvexTemplate >::findbest(), GJK< btConvexTemplate >::getsupport(), EPA< btConvexTemplate >::m_depth, EPA< btConvexTemplate >::m_hull, EPA< btConvexTemplate >::m_nextsv, EPA< btConvexTemplate >::m_normal, EPA< btConvexTemplate >::m_result, GJK< btConvexTemplate >::m_simplex, EPA< btConvexTemplate >::m_status, EPA< btConvexTemplate >::m_stock, EPA< btConvexTemplate >::m_sv_store, EPA< btConvexTemplate >::sFace::n, EPA< btConvexTemplate >::newface(), EPA< btConvexTemplate >::sHorizon::nf, GJK< btConvexTemplate >::sSimplex::p, EPA< btConvexTemplate >::sFace::pass, GJK< btConvexTemplate >::sSimplex::rank, EPA< btConvexTemplate >::remove(), EPA< btConvexTemplate >::sList::root, sum(), GJK< btConvexTemplate >::sSV::w, and w().
Referenced by btGjkEpaSolver3_Penetration().
|
inline |
Definition at line 838 of file btGjkEpa3.h.
References EPA< btConvexTemplate >::append(), EPA< btConvexTemplate >::bind(), btDot(), EPA< btConvexTemplate >::sFace::c, EPA< btConvexTemplate >::sHorizon::cf, EPA< btConvexTemplate >::sFace::d, EPA< btConvexTemplate >::sFace::e, e, EPA_PLANE_EPS, EPA< btConvexTemplate >::sFace::f, EPA< btConvexTemplate >::sHorizon::ff, EPA< btConvexTemplate >::m_hull, EPA< btConvexTemplate >::m_stock, EPA< btConvexTemplate >::sFace::n, EPA< btConvexTemplate >::newface(), EPA< btConvexTemplate >::sHorizon::nf, EPA< btConvexTemplate >::sFace::pass, EPA< btConvexTemplate >::remove(), and w().
Referenced by EPA< btConvexTemplate >::Evaluate().
Definition at line 823 of file btGjkEpa3.h.
References EPA< btConvexTemplate >::sFace::d, EPA< btConvexTemplate >::sFace::l, EPA< btConvexTemplate >::m_hull, and EPA< btConvexTemplate >::sList::root.
Referenced by EPA< btConvexTemplate >::Evaluate().
|
inline |
Definition at line 743 of file btGjkEpa3.h.
References Freestyle::a, usdtokens::b(), btCross(), btDot(), btMax(), btSqrt(), btVector3, and EPA< btConvexTemplate >::sFace::n.
Referenced by EPA< btConvexTemplate >::newface().
Definition at line 611 of file btGjkEpa3.h.
References EPA< btConvexTemplate >::append(), btVector3, eEpaFailed, EPA_MAX_FACES, EPA< btConvexTemplate >::m_depth, EPA< btConvexTemplate >::m_fc_store, EPA< btConvexTemplate >::m_nextsv, EPA< btConvexTemplate >::m_normal, EPA< btConvexTemplate >::m_status, and EPA< btConvexTemplate >::m_stock.
Referenced by EPA< btConvexTemplate >::EPA().
|
inline |
Definition at line 779 of file btGjkEpa3.h.
References Freestyle::a, EPA< btConvexTemplate >::append(), usdtokens::b(), btCross(), btDot(), EPA< btConvexTemplate >::sFace::c, Freestyle::c, EPA< btConvexTemplate >::sFace::d, eEpaDegenerated, eEpaNonConvex, eEpaOutOfFaces, eEpaOutOfVertices, EPA_ACCURACY, EPA_PLANE_EPS, EPA< btConvexTemplate >::getedgedist(), l, EPA< btConvexTemplate >::m_hull, EPA< btConvexTemplate >::m_status, EPA< btConvexTemplate >::m_stock, EPA< btConvexTemplate >::sFace::n, EPA< btConvexTemplate >::sFace::pass, EPA< btConvexTemplate >::remove(), EPA< btConvexTemplate >::sList::root, and v.
Referenced by EPA< btConvexTemplate >::Evaluate(), and EPA< btConvexTemplate >::expand().
|
inlinestatic |
Definition at line 603 of file btGjkEpa3.h.
References EPA< btConvexTemplate >::sList::count, EPA< btConvexTemplate >::sFace::l, and EPA< btConvexTemplate >::sList::root.
Referenced by EPA< btConvexTemplate >::Evaluate(), EPA< btConvexTemplate >::expand(), and EPA< btConvexTemplate >::newface().
Definition at line 576 of file btGjkEpa3.h.
Referenced by btGjkEpaSolver3_Penetration(), EPA< btConvexTemplate >::Evaluate(), and EPA< btConvexTemplate >::Initialize().
sFace EPA< btConvexTemplate >::m_fc_store[EPA_MAX_FACES] |
Definition at line 578 of file btGjkEpa3.h.
Referenced by EPA< btConvexTemplate >::Initialize().
Definition at line 580 of file btGjkEpa3.h.
Referenced by EPA< btConvexTemplate >::Evaluate(), EPA< btConvexTemplate >::expand(), EPA< btConvexTemplate >::findbest(), and EPA< btConvexTemplate >::newface().
Definition at line 579 of file btGjkEpa3.h.
Referenced by EPA< btConvexTemplate >::Evaluate(), and EPA< btConvexTemplate >::Initialize().
Definition at line 575 of file btGjkEpa3.h.
Referenced by btGjkEpaSolver3_Penetration(), EPA< btConvexTemplate >::Evaluate(), and EPA< btConvexTemplate >::Initialize().
GJK<btConvexTemplate>::sSimplex EPA< btConvexTemplate >::m_result |
Definition at line 574 of file btGjkEpa3.h.
Referenced by btGjkEpaSolver3_Penetration(), and EPA< btConvexTemplate >::Evaluate().
eEpaStatus EPA< btConvexTemplate >::m_status |
Definition at line 573 of file btGjkEpa3.h.
Referenced by EPA< btConvexTemplate >::Evaluate(), EPA< btConvexTemplate >::Initialize(), and EPA< btConvexTemplate >::newface().
Definition at line 581 of file btGjkEpa3.h.
Referenced by EPA< btConvexTemplate >::Evaluate(), EPA< btConvexTemplate >::expand(), EPA< btConvexTemplate >::Initialize(), and EPA< btConvexTemplate >::newface().
GJK<btConvexTemplate>::sSV EPA< btConvexTemplate >::m_sv_store[EPA_MAX_VERTICES] |
Definition at line 577 of file btGjkEpa3.h.
Referenced by EPA< btConvexTemplate >::Evaluate().