FCL  0.6.0
Flexible Collision Library
fcl::detail::EPA< S > Struct Template Reference

class for EPA algorithm More...

#include <epa.h>

Public Types

enum  Status {
  Valid, Touching, Degenerated, NonConvex,
  InvalidHull, OutOfFaces, OutOfVertices, AccuracyReached,
  FallBack, Failed
}
 

Public Member Functions

 EPA (unsigned int max_face_num_, unsigned int max_vertex_num_, unsigned int max_iterations_, S tolerance_)
 
void initialize ()
 
bool getEdgeDist (SimplexF *face, SimplexV *a, SimplexV *b, S &dist)
 
SimplexF * newFace (SimplexV *a, SimplexV *b, SimplexV *c, bool forced)
 
SimplexF * findBest ()
 Find the best polytope face to split.
 
Status evaluate (GJK< S > &gjk, const Vector3< S > &guess)
 
bool expand (size_t pass, SimplexV *w, SimplexF *f, size_t e, SimplexHorizon &horizon)
 the goal is to add a face connecting vertex w and face edge f[e]
 

Public Attributes

Status status
 
GJK< S >::Simplex result
 
Vector3< S > normal
 
depth
 
SimplexV * sv_store
 
SimplexF * fc_store
 
size_t nextsv
 
SimplexList hull
 
SimplexList stock
 

Detailed Description

template<typename S>
struct fcl::detail::EPA< S >

class for EPA algorithm


The documentation for this struct was generated from the following files: