FCL  0.6.0
Flexible Collision Library
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 S = typename NarrowPhaseSolver::S
 
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...
 

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
 

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

Member Typedef Documentation

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);

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