pinocchio  3.5.0
A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives
distance.hpp
1 //
2 // Copyright (c) 2015-2021 CNRS INRIA
3 //
4 
5 #ifndef __pinocchio_collision_distance_hpp__
6 #define __pinocchio_collision_distance_hpp__
7 
8 #include "pinocchio/multibody/model.hpp"
9 #include "pinocchio/multibody/data.hpp"
10 #include "pinocchio/multibody/geometry.hpp"
11 
12 #include "pinocchio/collision/config.hpp"
13 
14 #include <hpp/fcl/collision_data.h>
15 
16 namespace pinocchio
17 {
18 
33  template<
34  typename Scalar,
35  int Options,
36  template<typename, int> class JointCollectionTpl,
37  typename ConfigVectorType>
38  std::size_t computeDistances(
41  const GeometryModel & geom_model,
42  GeometryData & geom_data);
43 
59  template<
60  typename Scalar,
61  int Options,
62  template<typename, int> class JointCollectionTpl,
63  typename ConfigVectorType>
64  std::size_t computeDistances(
67  const GeometryModel & geom_model,
68  GeometryData & geom_data,
69  const Eigen::MatrixBase<ConfigVectorType> & q);
70 
82  fcl::DistanceResult & computeDistance(
83  const GeometryModel & geom_model, GeometryData & geom_data, const PairIndex pair_id);
84 
94  std::size_t computeDistances(const GeometryModel & geom_model, GeometryData & geom_data);
95 
96 } // namespace pinocchio
97 
98 /* --- Details -------------------------------------------------------------------- */
99 #include "pinocchio/collision/distance.hxx"
100 #if PINOCCHIO_ENABLE_TEMPLATE_INSTANTIATION
101  #include "pinocchio/collision/distance.txx"
102 #endif // PINOCCHIO_ENABLE_TEMPLATE_INSTANTIATION
103 
104 #endif // ifndef __pinocchio_collision_distance_hpp__
Main pinocchio namespace.
Definition: treeview.dox:11
fcl::DistanceResult & computeDistance(const GeometryModel &geom_model, GeometryData &geom_data, const PairIndex pair_id)
Compute the minimal distance between collision objects of a SINGLE collison pair.
std::size_t computeDistances(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const GeometryModel &geom_model, GeometryData &geom_data)