|
coal 3.0.1
Coal, The Collision Detection Library. Previously known as HPP-FCL, fork of FCL -- The Flexible Collision Library
|
Result for a contact patch computation. More...
#include <coal/collision_data.h>
Public Types | |
| using | ContactPatchVector = std::vector< ContactPatch > |
| using | ContactPatchRef = std::reference_wrapper< ContactPatch > |
| using | ContactPatchRefVector = std::vector< ContactPatchRef > |
Public Member Functions | |
| ContactPatchResult () | |
| Default constructor. | |
| ContactPatchResult (const ContactPatchRequest &request) | |
Constructor using a ContactPatchRequest. | |
| size_t | numContactPatches () const |
| Number of contact patches in the result. | |
| ContactPatchRef | getUnusedContactPatch () |
| Returns a new unused contact patch from the internal data vector. | |
| const ContactPatch & | getContactPatch (const size_t i) const |
| Const getter for the i-th contact patch of the result. | |
| ContactPatch & | contactPatch (const size_t i) |
| Getter for the i-th contact patch of the result. | |
| void | clear () |
| Clears the contact patch result. | |
| void | set (const ContactPatchRequest &request) |
Set up a ContactPatchResult from a ContactPatchRequest | |
| bool | check (const ContactPatchRequest &request) const |
Return true if this ContactPatchResult is aligned with the ContactPatchRequest given as input. | |
| bool | operator== (const ContactPatchResult &other) const |
| Whether two ContactPatchResult are identical or not. | |
| void | swapObjects () |
| Repositions the ContactPatch when they get inverted during their construction. | |
Protected Attributes | |
| ContactPatchVector | m_contact_patches_data |
| Data container for the vector of contact patches. | |
| size_t | m_id_available_patch |
Contact patches in m_contact_patches_data can have two statuses: used or unused. This index tracks the first unused patch in the m_contact_patches_data vector. | |
| ContactPatchRefVector | m_contact_patches |
| Vector of contact patches of the result. | |
Result for a contact patch computation.
| using coal::ContactPatchResult::ContactPatchRef = std::reference_wrapper<ContactPatch> |
| using coal::ContactPatchResult::ContactPatchRefVector = std::vector<ContactPatchRef> |
| using coal::ContactPatchResult::ContactPatchVector = std::vector<ContactPatch> |
|
inline |
Default constructor.
|
inlineexplicit |
Constructor using a ContactPatchRequest.
|
inline |
Return true if this ContactPatchResult is aligned with the ContactPatchRequest given as input.
|
inline |
Clears the contact patch result.
|
inline |
Getter for the i-th contact patch of the result.
|
inline |
Const getter for the i-th contact patch of the result.
|
inline |
Returns a new unused contact patch from the internal data vector.
|
inline |
Number of contact patches in the result.
|
inline |
Whether two ContactPatchResult are identical or not.
|
inline |
Set up a ContactPatchResult from a ContactPatchRequest
|
inline |
Repositions the ContactPatch when they get inverted during their construction.
|
protected |
Vector of contact patches of the result.
|
protected |
Data container for the vector of contact patches.
CollisionResult or DistanceResult, which have a very small memory footprint, contact patches can contain relatively large polytopes. In order to reuse a ContactPatchResult while avoiding successive mallocs, we have a data container and a vector which points to the currently active patches in this data container.
|
protected |
Contact patches in m_contact_patches_data can have two statuses: used or unused. This index tracks the first unused patch in the m_contact_patches_data vector.