FCL
0.6.0
Flexible Collision Library
|
collision and distance solver based on libccd library. More...
#include <gjk_solver_libccd.h>
Public Types | |
using | S = S_ |
Public Member Functions | |
template<typename Shape1 , typename Shape2 > | |
FCL_DEPRECATED bool | shapeIntersect (const Shape1 &s1, const Transform3< S > &tf1, const Shape2 &s2, const Transform3< S > &tf2, Vector3< S > *contact_points, S *penetration_depth, Vector3< S > *normal) const |
intersection checking between two shapes More... | |
template<typename Shape1 , typename Shape2 > | |
bool | shapeIntersect (const Shape1 &s1, const Transform3< S > &tf1, const Shape2 &s2, const Transform3< S > &tf2, std::vector< ContactPoint< S >> *contacts=nullptr) const |
intersection checking between two shapes | |
template<typename Shape > | |
bool | shapeTriangleIntersect (const Shape &s, const Transform3< S > &tf, const Vector3< S > &P1, const Vector3< S > &P2, const Vector3< S > &P3, Vector3< S > *contact_points=nullptr, S *penetration_depth=nullptr, Vector3< S > *normal=nullptr) const |
intersection checking between one shape and a triangle | |
template<typename Shape > | |
bool | shapeTriangleIntersect (const Shape &s, const Transform3< S > &tf1, const Vector3< S > &P1, const Vector3< S > &P2, const Vector3< S > &P3, const Transform3< S > &tf2, Vector3< S > *contact_points=nullptr, S *penetration_depth=nullptr, Vector3< S > *normal=nullptr) const |
template<typename Shape1 , typename Shape2 > | |
bool | shapeDistance (const Shape1 &s1, const Transform3< S > &tf1, const Shape2 &s2, const Transform3< S > &tf2, S *dist=nullptr, Vector3< S > *p1=nullptr, Vector3< S > *p2=nullptr) const |
distance computation between two shapes | |
template<typename Shape > | |
bool | shapeTriangleDistance (const Shape &s, const Transform3< S > &tf, const Vector3< S > &P1, const Vector3< S > &P2, const Vector3< S > &P3, S *dist=nullptr, Vector3< S > *p1=nullptr, Vector3< S > *p2=nullptr) const |
distance computation between one shape and a triangle | |
template<typename Shape > | |
bool | shapeTriangleDistance (const Shape &s, const Transform3< S > &tf1, const Vector3< S > &P1, const Vector3< S > &P2, const Vector3< S > &P3, const Transform3< S > &tf2, S *dist=nullptr, Vector3< S > *p1=nullptr, Vector3< S > *p2=nullptr) const |
distance computation between one shape and a triangle with transformation | |
GJKSolver_libccd () | |
default setting for GJK algorithm | |
void | enableCachedGuess (bool if_enable) const |
void | setCachedGuess (const Vector3< S > &guess) const |
Vector3< S > | getCachedGuess () const |
template<typename Shape1 , typename Shape2 > | |
bool | shapeIntersect (const Shape1 &s1, const Transform3< S > &tf1, const Shape2 &s2, const Transform3< S > &tf2, Vector3< S > *contact_points, S *penetration_depth, Vector3< S > *normal) const |
Public Attributes | |
unsigned int | max_collision_iterations |
maximum number of iterations used in GJK algorithm for collision | |
unsigned int | max_distance_iterations |
maximum number of iterations used in GJK algorithm for distance | |
S | collision_tolerance |
the threshold used in GJK algorithm to stop collision iteration | |
S | distance_tolerance |
the threshold used in GJK algorithm to stop distance iteration | |
collision and distance solver based on libccd library.
FCL_DEPRECATED bool fcl::detail::GJKSolver_libccd< S_ >::shapeIntersect | ( | const Shape1 & | s1, |
const Transform3< S > & | tf1, | ||
const Shape2 & | s2, | ||
const Transform3< S > & | tf2, | ||
Vector3< S > * | contact_points, | ||
S * | penetration_depth, | ||
Vector3< S > * | normal | ||
) | const |
intersection checking between two shapes