Template Function pinocchio::computeCollisions(const ModelTpl<Scalar, Options, JointCollectionTpl>&, DataTpl<Scalar, Options, JointCollectionTpl>&, const GeometryModel&, GeometryData&, const Eigen::MatrixBase<ConfigVectorType>&, const bool)

Function Documentation

template<typename Scalar, int Options, template<typename, int> class JointCollectionTpl, typename ConfigVectorType>
inline bool pinocchio::computeCollisions(const ModelTpl<Scalar, Options, JointCollectionTpl> &model, DataTpl<Scalar, Options, JointCollectionTpl> &data, const GeometryModel &geom_model, GeometryData &geom_data, const Eigen::MatrixBase<ConfigVectorType> &q, const bool stopAtFirstCollision = false)

Compute the forward kinematics, update the geometry placements and calls computeCollision for every active pairs of GeometryData.

Note

A similar function is available without model, data and q, not recomputing the forward kinematics.

Warning

if stopAtFirstcollision = true, then the collisions vector will not be entirely fulfilled (of course).

Template Parameters:
  • JointCollection – Collection of Joint types.

  • ConfigVectorType – Type of the joint configuration vector.

Parameters:
  • model[in] robot model (const)

  • data[out] corresponding data (nonconst) where the forward kinematics results are stored

  • geom_model[in] geometry model (const)

  • geom_data[out] corresponding geometry data (nonconst) where distances are computed

  • q[in] robot configuration.

  • stopAtFirstCollision[in] if true, stop the loop over the collision pairs when the first collision is detected.