coal
3.0.1
Coal, The Collision Detection Library. Previously known as HPP-FCL, fork of FCL -- The Flexible Collision Library
|
The contact patch matrix stores the functions for contact patches computation between different types of objects and provides a uniform call interface. More...
#include <coal/contact_patch_func_matrix.h>
Public Types | |
typedef void(* | ContactPatchFunc) (const CollisionGeometry *o1, const Transform3s &tf1, const CollisionGeometry *o2, const Transform3s &tf2, const CollisionResult &collision_result, const ContactPatchSolver *csolver, const ContactPatchRequest &request, ContactPatchResult &result) |
the uniform call interface for computing contact patches: we need know More... | |
Public Member Functions | |
ContactPatchFunctionMatrix () | |
Public Attributes | |
ContactPatchFunc | contact_patch_matrix [NODE_COUNT][NODE_COUNT] |
Each item in the contact patch matrix is a function to handle contact patch computation between objects of type1 and type2. More... | |
The contact patch matrix stores the functions for contact patches computation between different types of objects and provides a uniform call interface.
typedef void(* coal::ContactPatchFunctionMatrix::ContactPatchFunc) (const CollisionGeometry *o1, const Transform3s &tf1, const CollisionGeometry *o2, const Transform3s &tf2, const CollisionResult &collision_result, const ContactPatchSolver *csolver, const ContactPatchRequest &request, ContactPatchResult &result) |
the uniform call interface for computing contact patches: we need know
coal::Contact
), from which contact patches will be expanded;coal::ContactPatchResult
).Note: we pass a GJKSolver, because it allows to reuse internal computation that was made during the narrow phase. It also allows to experiment with different ways to compute contact patches. We could, for example, perturb tf1 and tf2 and make multiple calls to the GJKSolver (although this is not the approach done by default).
coal::ContactPatchFunctionMatrix::ContactPatchFunctionMatrix | ( | ) |
ContactPatchFunc coal::ContactPatchFunctionMatrix::contact_patch_matrix[NODE_COUNT][NODE_COUNT] |
Each item in the contact patch matrix is a function to handle contact patch computation between objects of type1 and type2.