hpp-fcl  2.4.1
HPP fork of FCL -- The Flexible Collision Library
hpp::fcl::CollisionRequest Struct Reference

request to the collision algorithm More...

#include <hpp/fcl/collision_data.h>

Inheritance diagram for hpp::fcl::CollisionRequest:
Collaboration diagram for hpp::fcl::CollisionRequest:

Public Member Functions

 CollisionRequest (const CollisionRequestFlag flag, size_t num_max_contacts_)
 Constructor from a flag and a maximal number of contacts. More...
 
 CollisionRequest ()
 Default constructor. More...
 
bool isSatisfied (const CollisionResult &result) const
 
bool operator== (const CollisionRequest &other) const
 whether two CollisionRequest are the same or not More...
 
- Public Member Functions inherited from hpp::fcl::QueryRequest
 QueryRequest ()
 Default constructor. More...
 
 QueryRequest (const QueryRequest &other)=default
 Copy constructor. More...
 
QueryRequestoperator= (const QueryRequest &other)=default
 Copy assignment operator. More...
 
void updateGuess (const QueryResult &result)
 
bool operator== (const QueryRequest &other) const
 whether two QueryRequest are the same or not More...
 

Public Attributes

size_t num_max_contacts
 The maximum number of contacts will return. More...
 
bool enable_contact
 whether the contact information (normal, penetration depth and contact position) will return More...
 
bool enable_distance_lower_bound
 Whether a lower bound on distance is returned when objects are disjoint. More...
 
FCL_REAL security_margin
 Distance below which objects are considered in collision. See Collision. More...
 
FCL_REAL break_distance
 Distance below which bounding volumes are broken down. See Collision. More...
 
FCL_REAL distance_upper_bound
 Distance above which GJK solver makes an early stopping. GJK stops searching for the closest points when it proves that the distance between two geometries is above this threshold. More...
 
- Public Attributes inherited from hpp::fcl::QueryRequest
GJKInitialGuess gjk_initial_guess
 
bool enable_cached_gjk_guess
 whether enable gjk initial guess @Deprecated Use gjk_initial_guess instead More...
 
GJKVariant gjk_variant
 whether to enable the Nesterov accleration of GJK More...
 
GJKConvergenceCriterion gjk_convergence_criterion
 convergence criterion used to stop GJK More...
 
GJKConvergenceCriterionType gjk_convergence_criterion_type
 convergence criterion used to stop GJK More...
 
FCL_REAL gjk_tolerance
 tolerance for the GJK algorithm More...
 
size_t gjk_max_iterations
 maximum iteration for the GJK algorithm More...
 
Vec3f cached_gjk_guess
 the gjk initial guess set by user More...
 
support_func_guess_t cached_support_func_guess
 the support function initial guess set by user More...
 
bool enable_timings
 enable timings when performing collision/distance request More...
 
FCL_REAL collision_distance_threshold
 threshold below which a collision is considered. More...
 

Detailed Description

request to the collision algorithm

Constructor & Destructor Documentation

◆ CollisionRequest() [1/2]

hpp::fcl::CollisionRequest::CollisionRequest ( const CollisionRequestFlag  flag,
size_t  num_max_contacts_ 
)
inline

Constructor from a flag and a maximal number of contacts.

Parameters
[in]flagCollision request flag
[in]num_max_contactsMaximal number of allowed contacts

◆ CollisionRequest() [2/2]

hpp::fcl::CollisionRequest::CollisionRequest ( )
inline

Default constructor.

Member Function Documentation

◆ isSatisfied()

bool hpp::fcl::CollisionRequest::isSatisfied ( const CollisionResult result) const

◆ operator==()

bool hpp::fcl::CollisionRequest::operator== ( const CollisionRequest other) const
inline

whether two CollisionRequest are the same or not

Member Data Documentation

◆ break_distance

FCL_REAL hpp::fcl::CollisionRequest::break_distance

Distance below which bounding volumes are broken down. See Collision.

◆ distance_upper_bound

FCL_REAL hpp::fcl::CollisionRequest::distance_upper_bound

Distance above which GJK solver makes an early stopping. GJK stops searching for the closest points when it proves that the distance between two geometries is above this threshold.

Remarks
Consequently, the closest points might be incorrect, but allows to save computational resources.

◆ enable_contact

bool hpp::fcl::CollisionRequest::enable_contact

whether the contact information (normal, penetration depth and contact position) will return

◆ enable_distance_lower_bound

bool hpp::fcl::CollisionRequest::enable_distance_lower_bound

Whether a lower bound on distance is returned when objects are disjoint.

◆ num_max_contacts

size_t hpp::fcl::CollisionRequest::num_max_contacts

The maximum number of contacts will return.

◆ security_margin

FCL_REAL hpp::fcl::CollisionRequest::security_margin

Distance below which objects are considered in collision. See Collision.

Note
If set to -inf, the objects tested for collision are considered as collision free and no test is actually performed by functions hpp::fcl::collide of class hpp::fcl::ComputeCollision.

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