Public Types | Public Member Functions | Public Attributes | List of all members
fcl::detail::CollisionFunctionMatrix< NarrowPhaseSolver > Struct Template Reference

collision matrix stores the functions for collision between different types of objects and provides a uniform call interface More...

#include <collision_func_matrix.h>

Public Types

using CollisionFunc = std::size_t(*)(const CollisionGeometry< S > *o1, const Transform3< S > &tf1, const CollisionGeometry< S > *o2, const Transform3< S > &tf2, const NarrowPhaseSolver *nsolver, const CollisionRequest< S > &request, CollisionResult< S > &result)
 the uniform call interface for collision: for collision, we need know More...
 
using S = typename NarrowPhaseSolver::S
 

Public Member Functions

 CollisionFunctionMatrix ()
 

Public Attributes

CollisionFunc collision_matrix [NODE_COUNT][NODE_COUNT]
 each item in the collision matrix is a function to handle collision between objects of type1 and type2 More...
 

Detailed Description

template<typename NarrowPhaseSolver>
struct fcl::detail::CollisionFunctionMatrix< NarrowPhaseSolver >

collision matrix stores the functions for collision between different types of objects and provides a uniform call interface

Definition at line 54 of file collision_func_matrix.h.

Member Typedef Documentation

◆ CollisionFunc

template<typename NarrowPhaseSolver >
using fcl::detail::CollisionFunctionMatrix< NarrowPhaseSolver >::CollisionFunc = std::size_t (*)( const CollisionGeometry<S>* o1, const Transform3<S>& tf1, const CollisionGeometry<S>* o2, const Transform3<S>& tf2, const NarrowPhaseSolver* nsolver, const CollisionRequest<S>& request, CollisionResult<S>& result)

the uniform call interface for collision: for collision, we need know

  1. two objects o1 and o2 and their configuration in world coordinate tf1 and tf2;
  2. the solver for narrow phase collision, this is for the collision between geometric shapes;
  3. the request setting for collision (e.g., whether need to return normal information, whether need to compute cost);
  4. the structure to return collision result

Definition at line 74 of file collision_func_matrix.h.

◆ S

template<typename NarrowPhaseSolver >
using fcl::detail::CollisionFunctionMatrix< NarrowPhaseSolver >::S = typename NarrowPhaseSolver::S

Definition at line 56 of file collision_func_matrix.h.

Constructor & Destructor Documentation

◆ CollisionFunctionMatrix()

template<typename NarrowPhaseSolver >
fcl::detail::CollisionFunctionMatrix< NarrowPhaseSolver >::CollisionFunctionMatrix

Definition at line 664 of file collision_func_matrix-inl.h.

Member Data Documentation

◆ collision_matrix

template<typename NarrowPhaseSolver >
CollisionFunc fcl::detail::CollisionFunctionMatrix< NarrowPhaseSolver >::collision_matrix[NODE_COUNT][NODE_COUNT]

each item in the collision matrix is a function to handle collision between objects of type1 and type2

Definition at line 78 of file collision_func_matrix.h.


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


fcl
Author(s):
autogenerated on Tue Dec 5 2023 03:40:50