DART  6.6.2
dart::collision::BodyNodeCollisionFilter Class Reference

#include <CollisionFilter.hpp>

Inheritance diagram for dart::collision::BodyNodeCollisionFilter:
dart::collision::CollisionFilter

Public Member Functions

void addBodyNodePairToBlackList (const dynamics::BodyNode *bodyNode1, const dynamics::BodyNode *bodyNode2)
 Add a BodyNode pair to the blacklist. More...
 
void removeBodyNodePairFromBlackList (const dynamics::BodyNode *bodyNode1, const dynamics::BodyNode *bodyNode2)
 Remove a BodyNode pair from the blacklist. More...
 
void removeAllBodyNodePairsFromBlackList ()
 Remove all the BodyNode pairs from the blacklist. More...
 
bool ignoresCollision (const CollisionObject *object1, const CollisionObject *object2) const override
 Returns true if the given two CollisionObjects should be checked by the collision detector, false otherwise. More...
 
bool needCollision (const CollisionObject *object1, const CollisionObject *object2) const
 Returns true if the given two CollisionObjects should be checked by the collision detector, false otherwise. More...
 

Private Member Functions

bool areAdjacentBodies (const dynamics::BodyNode *bodyNode1, const dynamics::BodyNode *bodyNode2) const
 Returns true if the two BodyNodes are adjacent BodyNodes (i.e., the two BodyNodes are connected by a Joint). More...
 

Private Attributes

detail::UnorderedPairs< dynamics::BodyNodemBodyNodeBlackList
 List of pairs to be ignored in the collision detection. More...
 

Member Function Documentation

◆ addBodyNodePairToBlackList()

void dart::collision::BodyNodeCollisionFilter::addBodyNodePairToBlackList ( const dynamics::BodyNode bodyNode1,
const dynamics::BodyNode bodyNode2 
)

Add a BodyNode pair to the blacklist.

◆ areAdjacentBodies()

bool dart::collision::BodyNodeCollisionFilter::areAdjacentBodies ( const dynamics::BodyNode bodyNode1,
const dynamics::BodyNode bodyNode2 
) const
private

Returns true if the two BodyNodes are adjacent BodyNodes (i.e., the two BodyNodes are connected by a Joint).

◆ ignoresCollision()

bool dart::collision::BodyNodeCollisionFilter::ignoresCollision ( const CollisionObject object1,
const CollisionObject object2 
) const
overridevirtual

Returns true if the given two CollisionObjects should be checked by the collision detector, false otherwise.

Implements dart::collision::CollisionFilter.

◆ needCollision()

bool dart::collision::CollisionFilter::needCollision ( const CollisionObject object1,
const CollisionObject object2 
) const
inherited

Returns true if the given two CollisionObjects should be checked by the collision detector, false otherwise.

Deprecated:
Deprecated in 6.3.0. Please use ignoreCollision instead. Note that ignoreCollision returns logically opposite to what needCollision returns.

◆ removeAllBodyNodePairsFromBlackList()

void dart::collision::BodyNodeCollisionFilter::removeAllBodyNodePairsFromBlackList ( )

Remove all the BodyNode pairs from the blacklist.

◆ removeBodyNodePairFromBlackList()

void dart::collision::BodyNodeCollisionFilter::removeBodyNodePairFromBlackList ( const dynamics::BodyNode bodyNode1,
const dynamics::BodyNode bodyNode2 
)

Remove a BodyNode pair from the blacklist.

Member Data Documentation

◆ mBodyNodeBlackList

detail::UnorderedPairs<dynamics::BodyNode> dart::collision::BodyNodeCollisionFilter::mBodyNodeBlackList
private

List of pairs to be ignored in the collision detection.