Template Struct TreeBroadPhaseManagerTpl

Inheritance Relationships

Base Type

Struct Documentation

template<typename _Manager>
struct TreeBroadPhaseManagerTpl : public pinocchio::BroadPhaseManagerBase<TreeBroadPhaseManagerTpl<_Manager>>

Public Types

typedef BroadPhaseManagerBase<TreeBroadPhaseManagerTpl<_Manager>> Base
typedef BroadPhaseManagerTpl<Manager> BroadPhaseManager
typedef std::vector<hpp::fcl::CollisionObject*> CollisionObjectPointerVector
typedef std::vector<BroadPhaseManager> BroadPhaseManagerVector
typedef BroadPhaseManager::Model Model
typedef BroadPhaseManager::GeometryModel GeometryModel
typedef BroadPhaseManager::GeometryData GeometryData

Public Functions

inline TreeBroadPhaseManagerTpl()

Default constructor.

inline TreeBroadPhaseManagerTpl(const Model *model_ptr, const GeometryModel *geometry_model_ptr, GeometryData *geometry_data_ptr)

Constructor from a given geometry model and data.

Parameters:
  • model_ptr[in] pointer to the model of the kinematic tree.

  • geometry_model_ptr[in] pointer to the geometry model.

  • geometry_data_ptr[in] pointer to the geometry data.

inline TreeBroadPhaseManagerTpl(const TreeBroadPhaseManagerTpl &other)

Copy contructor.

Parameters:

other[in] manager to copy.

void update(bool compute_local_aabb = false)

Update the manager from the current geometry positions and update the underlying FCL broad phase manager.

Parameters:

compute_local_aabb[in] whether to recompute the local AABB of the collision geometries which have changed.

void update(GeometryData *geom_data_ptr_new)

Update the manager with a new geometry data.

Parameters:

geom_data_ptr_new[in] pointer to the new geometry data.

inline ~TreeBroadPhaseManagerTpl()
bool check() const

Check whether the base broad phase manager is aligned with the current collision_objects.

bool check(CollisionCallBackBase *callback) const

Check whether the callback is inline with *this.

bool collide(CollisionObject &obj, CollisionCallBackBase *callback) const

Performs collision test between one object and all the objects belonging to the manager.

bool collide(CollisionCallBackBase *callback) const

Performs collision test for the objects belonging to the manager.

bool collide(TreeBroadPhaseManagerTpl &other_manager, CollisionCallBackBase *callback) const

Performs collision test with objects belonging to another manager.

inline const BroadPhaseManagerVector &getBroadPhaseManagers() const

Returns internal broad phase managers.

inline BroadPhaseManagerVector &getBroadPhaseManagers()

Returns internal broad phase managers.

Public Members

EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Manager Manager

Protected Functions

void init(const size_t njoints)

Initialialisation.

Protected Attributes

BroadPhaseManagerVector managers

the vector of collision objects.