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

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

#include <distance_func_matrix.h>

Public Types

using DistanceFunc = S(*)(const CollisionGeometry< S > *o1, const Transform3< S > &tf1, const CollisionGeometry< S > *o2, const Transform3< S > &tf2, const NarrowPhaseSolver *nsolver, const DistanceRequest< S > &request, DistanceResult< S > &result)
 the uniform call interface for distance: for distance, we need know More...
 
using S = typename NarrowPhaseSolver::S
 

Public Member Functions

 DistanceFunctionMatrix ()
 

Public Attributes

DistanceFunc distance_matrix [NODE_COUNT][NODE_COUNT]
 each item in the distance matrix is a function to handle distance between objects of type1 and type2 More...
 

Detailed Description

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

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

Definition at line 54 of file distance_func_matrix.h.

Member Typedef Documentation

◆ DistanceFunc

template<typename NarrowPhaseSolver >
using fcl::detail::DistanceFunctionMatrix< NarrowPhaseSolver >::DistanceFunc = S (*)( const CollisionGeometry<S>* o1, const Transform3<S>& tf1, const CollisionGeometry<S>* o2, const Transform3<S>& tf2, const NarrowPhaseSolver* nsolver, const DistanceRequest<S>& request, DistanceResult<S>& result)

the uniform call interface for distance: for distance, 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 distance computation between geometric shapes;
  3. the request setting for distance (e.g., whether need to return nearest points);

Definition at line 72 of file distance_func_matrix.h.

◆ S

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

Definition at line 56 of file distance_func_matrix.h.

Constructor & Destructor Documentation

◆ DistanceFunctionMatrix()

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

Definition at line 477 of file distance_func_matrix-inl.h.

Member Data Documentation

◆ distance_matrix

template<typename NarrowPhaseSolver >
DistanceFunc fcl::detail::DistanceFunctionMatrix< NarrowPhaseSolver >::distance_matrix[NODE_COUNT][NODE_COUNT]

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

Definition at line 76 of file distance_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