31 #ifndef _LibCollision_EPA_H
32 #define _LibCollision_EPA_H
55 std::array<GJK::SupportPoint, 3>
point;
67 std::array<GJK::SupportPoint, 2>
point;
88 : point({{a,b,c}}), normal(((b.v-a.v)^(c.v-a.v)).unit()) {
115 double& u,
double& v,
double& w);
GJK_Algorithm & gjk
Definition: EPA.hpp:118
static double exit_treshold
Definition: EPA.hpp:106
static unsigned int max_iter
Definition: EPA.hpp:105
~EPA_Algorithm()
Definition: EPA.cpp:76
void barycentric(const EPA::Triangle &triangle, const Geom::Vector &p, double &u, double &v, double &w)
Definition: EPA.cpp:187
bool compute_data(Data &)
Definition: EPA.cpp:81
EPA_Algorithm(GJK_Algorithm &)
Definition: EPA.cpp:67
EPA::Polyhedron polyhedron
Definition: EPA.hpp:119
Definition: Vector.hpp:75
Definition: Common.hpp:198
std::array< GJK::SupportPoint, 2 > point
Definition: EPA.hpp:67
Edge(const GJK::SupportPoint &a, const GJK::SupportPoint &b)
Definition: EPA.hpp:92
std::list< Triangle > triangle
Definition: EPA.hpp:80
std::list< Edge > edge
Definition: EPA.hpp:81
void AddEdge(const GJK::SupportPoint &a, const GJK::SupportPoint &b)
Definition: EPA.cpp:49
Geom::Vector normal
Definition: EPA.hpp:56
Triangle(const GJK::SupportPoint &a, const GJK::SupportPoint &b, const GJK::SupportPoint &c)
Definition: EPA.hpp:87
std::array< GJK::SupportPoint, 3 > point
Definition: EPA.hpp:55