pinocchio  3.7.0
A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives
 
Loading...
Searching...
No Matches
BroadPhaseManagerTpl< _Manager > Struct Template Reference
Inheritance diagram for BroadPhaseManagerTpl< _Manager >:
Collaboration diagram for BroadPhaseManagerTpl< _Manager >:

Public Types

typedef BroadPhaseManagerBase< BroadPhaseManagerTpl< _Manager > > Base
 
typedef std::vector< CollisionObject > CollisionObjectVector
 
typedef ::pinocchio::GeometryData GeometryData
 
typedef ::pinocchio::GeometryModel GeometryModel
 
typedef _Manager Manager
 
typedef ::pinocchio::Model Model
 
typedef Eigen::VectorXd VectorXs
 

Public Member Functions

 BroadPhaseManagerTpl ()
 Default constructor.
 
 BroadPhaseManagerTpl (const BroadPhaseManagerTpl &other)
 Copy contructor.
 
 BroadPhaseManagerTpl (const Model *model_ptr, const GeometryModel *geometry_model_ptr, GeometryData *geometry_data_ptr, const GeometryObjectFilterBase &filter=GeometryObjectFilterNothing())
 Constructor from a given geometry model and data.
 
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 (BroadPhaseManagerTpl &other_manager, CollisionCallBackBase *callback) const
 Performs collision test with objects belonging to another manager.
 
bool collide (CollisionCallBackBase *callback) const
 Performs collision test for the objects belonging to the manager.
 
bool collide (CollisionObject &obj, CollisionCallBackBase *callback) const
 Performs collision test between one object and all the objects belonging to the manager.
 
const VectorXs & getCollisionObjectInflation ()
 Returns the inflation value related to each collision object.
 
CollisionObjectVector & getCollisionObjects ()
 Returns the vector of collision objects associated to the manager.
 
const CollisionObjectVector & getCollisionObjects () const
 Returns the vector of collision objects associated to the manager.
 
const std::vector< bool > & getCollisionObjectStatus () const
 Returns the status of the collision object.
 
Manager & getManager ()
 Returns internal manager.
 
const Manager & getManager () const
 Returns internal manager.
 
void update (bool compute_local_aabb=false)
 Update the manager from the current geometry positions and update the underlying FCL broad phase manager.
 
void update (GeometryData *geom_data_ptr_new)
 Update the manager with a new geometry data.
 
- Public Member Functions inherited from BroadPhaseManagerBase< BroadPhaseManagerTpl< _Manager > >
 BroadPhaseManagerBase ()
 Default constructor.
 
 BroadPhaseManagerBase (const BroadPhaseManagerBase &other)
 Copy constructor.
 
 BroadPhaseManagerBase (const Model *model_ptr, const GeometryModel *geometry_model_ptr, GeometryData *geometry_data_ptr)
 Constructor from a given geometry model and geometry data.
 
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 (BroadPhaseManagerBase &other_manager, CollisionCallBackBase *callback) const
 Performs collision test with objects belonging to another manager.
 
bool collide (CollisionCallBackBase *callback) const
 Performs collision test for the objects belonging to the manager.
 
bool collide (CollisionObject &obj, CollisionCallBackBase *callback) const
 Performs collision test between one object and all the objects belonging to the manager.
 
BroadPhaseManagerTpl< _Manager > & derived ()
 
const BroadPhaseManagerTpl< _Manager > & derived () const
 
GeometryData & getGeometryData ()
 Returns the geometry data associated to the manager.
 
const GeometryData & getGeometryData () const
 Returns the geometry data associated to the manager.
 
const GeometryModel & getGeometryModel () const
 Returns the geometry model associated to the manager.
 
const Model & getModel () const
 Returns the model associated to the manager.
 
BroadPhaseManagerBase & operator= (const BroadPhaseManagerBase &other)
 
void update (bool compute_local_aabb=false)
 Update the manager from the current geometry positions and update the underlying FCL broad phase manager.
 
void update (GeometryData *geom_data_ptr_new)
 Update the manager with a new geometry data.
 

Protected Member Functions

void init ()
 Initialialisation of BroadPhaseManagerTpl.
 

Protected Attributes

VectorXs collision_object_inflation
 the inflation value related to each collision object.
 
std::vector< bool > collision_object_is_active
 Disable status related to each collision objects.
 
CollisionObjectVector collision_objects
 the vector of collision objects.
 
std::vector< size_t > geometry_to_collision_index
 Mapping between a given geometry index and a collision index.
 
Manager manager
 internal manager
 
std::vector< size_t > selected_collision_pairs
 Selected collision pairs in the original geometry_model.
 
std::vector< size_t > selected_geometry_objects
 Selected geometry objects in the original geometry_model.
 
- Protected Attributes inherited from BroadPhaseManagerBase< BroadPhaseManagerTpl< _Manager > >
GeometryData * geometry_data_ptr
 Pointer to the geometry data.
 
const GeometryModel * geometry_model_ptr
 Pointer to the geometry model.
 
const Model * model_ptr
 Pointer to the model.
 

Detailed Description

template<typename _Manager>
struct pinocchio::BroadPhaseManagerTpl< _Manager >

Definition at line 17 of file broadphase-manager.hpp.

Member Typedef Documentation

◆ Base

◆ CollisionObjectVector

template<typename _Manager >
typedef std::vector<CollisionObject> CollisionObjectVector

Definition at line 22 of file broadphase-manager.hpp.

◆ GeometryData

◆ GeometryModel

◆ Manager

Definition at line 24 of file broadphase-manager.hpp.

◆ Model

Definition at line 26 of file broadphase-manager.hpp.

◆ VectorXs

template<typename _Manager >
typedef Eigen::VectorXd VectorXs

Definition at line 23 of file broadphase-manager.hpp.

Constructor & Destructor Documentation

◆ BroadPhaseManagerTpl() [1/3]

template<typename _Manager >
BroadPhaseManagerTpl ( )
inline

Default constructor.

Definition at line 31 of file broadphase-manager.hpp.

◆ BroadPhaseManagerTpl() [2/3]

template<typename _Manager >
BroadPhaseManagerTpl ( const Model *  model_ptr,
const GeometryModel *  geometry_model_ptr,
GeometryData *  geometry_data_ptr,
const GeometryObjectFilterBase &  filter = GeometryObjectFilterNothing() 
)
inline

Constructor from a given geometry model and data.

Parameters
[in]model_ptrpointer to the model.
[in]geometry_model_ptrpointer to the geometry model.
[in]geometry_data_ptrpointer to the geometry data.

Definition at line 42 of file broadphase-manager.hpp.

◆ BroadPhaseManagerTpl() [3/3]

Copy contructor.

Parameters
[in]othermanager to copy.

Definition at line 86 of file broadphase-manager.hpp.

Member Function Documentation

◆ getCollisionObjectInflation()

template<typename _Manager >
const VectorXs & getCollisionObjectInflation ( )
inline

Returns the inflation value related to each collision object.

Definition at line 138 of file broadphase-manager.hpp.

◆ getCollisionObjects() [1/2]

template<typename _Manager >
CollisionObjectVector & getCollisionObjects ( )
inline

Returns the vector of collision objects associated to the manager.

Definition at line 132 of file broadphase-manager.hpp.

◆ getCollisionObjects() [2/2]

template<typename _Manager >
const CollisionObjectVector & getCollisionObjects ( ) const
inline

Returns the vector of collision objects associated to the manager.

Definition at line 127 of file broadphase-manager.hpp.

◆ getCollisionObjectStatus()

template<typename _Manager >
const std::vector< bool > & getCollisionObjectStatus ( ) const
inline

Returns the status of the collision object.

Definition at line 176 of file broadphase-manager.hpp.

◆ getManager() [1/2]

template<typename _Manager >
Manager & getManager ( )
inline

Returns internal manager.

Definition at line 164 of file broadphase-manager.hpp.

◆ getManager() [2/2]

template<typename _Manager >
const Manager & getManager ( ) const
inline

Returns internal manager.

Definition at line 170 of file broadphase-manager.hpp.

◆ update() [1/2]

template<typename _Manager >
void update ( bool  compute_local_aabb = false)

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

Parameters
[in]compute_local_aabbwhether to recompute the local AABB of the collision geometries which have changed.

◆ update() [2/2]

template<typename _Manager >
void update ( GeometryData *  geom_data_ptr_new)

Update the manager with a new geometry data.

Parameters
[in]geom_data_ptr_newpointer to the new geometry data.

Member Data Documentation

◆ collision_object_inflation

template<typename _Manager >
VectorXs collision_object_inflation
protected

the inflation value related to each collision object.

Definition at line 189 of file broadphase-manager.hpp.

◆ collision_object_is_active

template<typename _Manager >
std::vector<bool> collision_object_is_active
protected

Disable status related to each collision objects.

Definition at line 201 of file broadphase-manager.hpp.

◆ collision_objects

template<typename _Manager >
CollisionObjectVector collision_objects
protected

the vector of collision objects.

Definition at line 186 of file broadphase-manager.hpp.

◆ geometry_to_collision_index

template<typename _Manager >
std::vector<size_t> geometry_to_collision_index
protected

Mapping between a given geometry index and a collision index.

Definition at line 195 of file broadphase-manager.hpp.

◆ manager

template<typename _Manager >
Manager manager
protected

internal manager

Definition at line 183 of file broadphase-manager.hpp.

◆ selected_collision_pairs

template<typename _Manager >
std::vector<size_t> selected_collision_pairs
protected

Selected collision pairs in the original geometry_model.

Definition at line 198 of file broadphase-manager.hpp.

◆ selected_geometry_objects

template<typename _Manager >
std::vector<size_t> selected_geometry_objects
protected

Selected geometry objects in the original geometry_model.

Definition at line 192 of file broadphase-manager.hpp.


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