Struct QueryRequest

Inheritance Relationships

Derived Types

Struct Documentation

struct QueryRequest

base class for all query requests

Subclassed by coal::CollisionRequest, coal::DistanceRequest

Public Functions

inline COAL_COMPILER_DIAGNOSTIC_PUSH COAL_COMPILER_DIAGNOSTIC_IGNORED_DEPRECECATED_DECLARATIONS QueryRequest ()

Default constructor.

QueryRequest(const QueryRequest &other) = default

Copy constructor.

QueryRequest &operator=(const QueryRequest &other) = default

Copy assignment operator.

inline COAL_COMPILER_DIAGNOSTIC_POP void updateGuess (const QueryResult &result) const

Updates the guess for the internal GJK algorithm in order to warm-start it when reusing this collision request on the same collision pair.

Note

The option gjk_initial_guess must be set to GJKInitialGuess::CachedGuess for this to work.

inline bool operator==(const QueryRequest &other) const

whether two QueryRequest are the same or not

Public Members

GJKInitialGuess gjk_initial_guess
bool enable_cached_gjk_guess

whether enable gjk initial guess @Deprecated Use gjk_initial_guess instead

mutable Vec3s cached_gjk_guess

the gjk initial guess set by user

mutable support_func_guess_t cached_support_func_guess

the support function initial guess set by user

size_t gjk_max_iterations

maximum iteration for the GJK algorithm

CoalScalar gjk_tolerance

tolerance for the GJK algorithm. Note: This tolerance determines the precision on the estimated distance between two geometries which are not in collision. It is recommended to not set this tolerance to less than 1e-6.

GJKVariant gjk_variant

whether to enable the Nesterov accleration of GJK

GJKConvergenceCriterion gjk_convergence_criterion

convergence criterion used to stop GJK

GJKConvergenceCriterionType gjk_convergence_criterion_type

convergence criterion used to stop GJK

size_t epa_max_iterations

max number of iterations for EPA

CoalScalar epa_tolerance

tolerance for EPA. Note: This tolerance determines the precision on the estimated distance between two geometries which are in collision. It is recommended to not set this tolerance to less than 1e-6. Also, setting EPA’s tolerance to less than GJK’s is not recommended.

bool enable_timings

enable timings when performing collision/distance request

CoalScalar collision_distance_threshold

threshold below which a collision is considered.