Public Member Functions | Public Attributes
fcl::CollisionTraversalNodeBase Class Reference

Node structure encoding the information required for collision traversal. More...

#include <hpp/fcl/traversal/traversal_node_base.h>

Inheritance diagram for fcl::CollisionTraversalNodeBase:
[legend]
Collaboration diagram for fcl::CollisionTraversalNodeBase:
[legend]

List of all members.

Public Member Functions

 CollisionTraversalNodeBase (bool enable_distance_lower_bound_=false)
virtual ~CollisionTraversalNodeBase ()
virtual bool BVTesting (int b1, int b2) const =0
 BV test between b1 and b2.
virtual bool BVTesting (int b1, int b2, FCL_REAL &sqrDistLowerBound) const =0
 BV test between b1 and b2.
virtual void leafTesting (int, int, FCL_REAL &) const
 Leaf test between node b1 and b2, if they are both leafs.
virtual bool canStop () const
 Check whether the traversal can stop.
void enableStatistics (bool enable)
 Whether store some statistics information during traversal.

Public Attributes

CollisionRequest request
 request setting for collision
CollisionResultresult
 collision result kept during the traversal iteration
bool enable_statistics
 Whether stores statistics.
bool enable_distance_lower_bound
 Whether to compute a lower bound on distance between bounding volumes.

Detailed Description

Node structure encoding the information required for collision traversal.


Constructor & Destructor Documentation

fcl::CollisionTraversalNodeBase::CollisionTraversalNodeBase ( bool  enable_distance_lower_bound_ = false) [inline]
virtual fcl::CollisionTraversalNodeBase::~CollisionTraversalNodeBase ( ) [virtual]

Member Function Documentation

virtual bool fcl::CollisionTraversalNodeBase::BVTesting ( int  b1,
int  b2 
) const [pure virtual]

BV test between b1 and b2.

Implemented in fcl::OcTreeMeshCollisionTraversalNode< BV, NarrowPhaseSolver >, fcl::MeshOcTreeCollisionTraversalNode< BV, NarrowPhaseSolver >, fcl::OcTreeShapeCollisionTraversalNode< S, NarrowPhaseSolver >, fcl::ShapeOcTreeCollisionTraversalNode< S, NarrowPhaseSolver >, fcl::OcTreeCollisionTraversalNode< NarrowPhaseSolver >, fcl::ShapeMeshCollisionTraversalNodeOBBRSS< S, NarrowPhaseSolver >, fcl::ShapeMeshCollisionTraversalNodekIOS< S, NarrowPhaseSolver >, fcl::ShapeMeshCollisionTraversalNodeRSS< S, NarrowPhaseSolver >, fcl::ShapeMeshCollisionTraversalNodeOBB< S, NarrowPhaseSolver >, fcl::MeshShapeCollisionTraversalNodeOBBRSS< S, NarrowPhaseSolver >, fcl::MeshShapeCollisionTraversalNodekIOS< S, NarrowPhaseSolver >, fcl::MeshShapeCollisionTraversalNodeRSS< S, NarrowPhaseSolver >, fcl::MeshShapeCollisionTraversalNodeOBB< S, NarrowPhaseSolver >, fcl::MeshCollisionTraversalNodeOBBRSS, fcl::MeshCollisionTraversalNodekIOS, fcl::MeshCollisionTraversalNodeRSS, fcl::MeshCollisionTraversalNodeOBB, fcl::ShapeBVHCollisionTraversalNode< S, BV >, fcl::ShapeBVHCollisionTraversalNode< S, OBB >, fcl::ShapeBVHCollisionTraversalNode< S, OBBRSS >, fcl::ShapeBVHCollisionTraversalNode< S, RSS >, fcl::ShapeBVHCollisionTraversalNode< S, kIOS >, fcl::BVHCollisionTraversalNode< BV >, fcl::BVHCollisionTraversalNode< OBB >, fcl::BVHCollisionTraversalNode< kIOS >, fcl::BVHCollisionTraversalNode< RSS >, fcl::BVHCollisionTraversalNode< OBBRSS >, fcl::BVHShapeCollisionTraversalNode< BV, S >, fcl::BVHShapeCollisionTraversalNode< OBB, S >, fcl::BVHShapeCollisionTraversalNode< kIOS, S >, fcl::BVHShapeCollisionTraversalNode< OBBRSS, S >, fcl::BVHShapeCollisionTraversalNode< RSS, S >, and fcl::ShapeCollisionTraversalNode< S1, S2, NarrowPhaseSolver >.

virtual bool fcl::CollisionTraversalNodeBase::BVTesting ( int  b1,
int  b2,
FCL_REAL sqrDistLowerBound 
) const [pure virtual]
virtual bool fcl::CollisionTraversalNodeBase::canStop ( ) const [virtual]
void fcl::CollisionTraversalNodeBase::enableStatistics ( bool  enable) [inline, virtual]

Whether store some statistics information during traversal.

Implements fcl::TraversalNodeBase.

References enable_statistics.

virtual void fcl::CollisionTraversalNodeBase::leafTesting ( int  ,
int  ,
FCL_REAL  
) const [inline, virtual]

Member Data Documentation

Whether to compute a lower bound on distance between bounding volumes.

Whether stores statistics.

Referenced by fcl::BVHShapeCollisionTraversalNode< RSS, S >::BVTesting(), fcl::BVHCollisionTraversalNode< OBBRSS >::BVTesting(), fcl::ShapeBVHCollisionTraversalNode< S, kIOS >::BVTesting(), fcl::MeshShapeCollisionTraversalNodeOBB< S, NarrowPhaseSolver >::BVTesting(), fcl::MeshShapeCollisionTraversalNodeRSS< S, NarrowPhaseSolver >::BVTesting(), fcl::MeshShapeCollisionTraversalNodekIOS< S, NarrowPhaseSolver >::BVTesting(), fcl::MeshShapeCollisionTraversalNodeOBBRSS< S, NarrowPhaseSolver >::BVTesting(), fcl::ShapeMeshCollisionTraversalNodeOBB< S, NarrowPhaseSolver >::BVTesting(), fcl::ShapeMeshCollisionTraversalNodeRSS< S, NarrowPhaseSolver >::BVTesting(), fcl::ShapeMeshCollisionTraversalNodekIOS< S, NarrowPhaseSolver >::BVTesting(), fcl::ShapeMeshCollisionTraversalNodeOBBRSS< S, NarrowPhaseSolver >::BVTesting(), enableStatistics(), fcl::MeshCollisionTraversalNode< OBBRSS >::leafTesting(), fcl::MeshShapeCollisionTraversalNode< OBBRSS, S, NarrowPhaseSolver >::leafTesting(), fcl::MeshShapeCollisionTraversalNodeOBB< S, NarrowPhaseSolver >::leafTesting(), fcl::MeshShapeCollisionTraversalNodeRSS< S, NarrowPhaseSolver >::leafTesting(), fcl::MeshShapeCollisionTraversalNodekIOS< S, NarrowPhaseSolver >::leafTesting(), fcl::MeshShapeCollisionTraversalNodeOBBRSS< S, NarrowPhaseSolver >::leafTesting(), fcl::ShapeMeshCollisionTraversalNode< S, kIOS, NarrowPhaseSolver >::leafTesting(), fcl::ShapeMeshCollisionTraversalNodeOBB< S, NarrowPhaseSolver >::leafTesting(), fcl::ShapeMeshCollisionTraversalNodeRSS< S, NarrowPhaseSolver >::leafTesting(), fcl::ShapeMeshCollisionTraversalNodekIOS< S, NarrowPhaseSolver >::leafTesting(), and fcl::ShapeMeshCollisionTraversalNodeOBBRSS< S, NarrowPhaseSolver >::leafTesting().

request setting for collision

Referenced by fcl::MeshCollisionTraversalNode< OBBRSS >::canStop(), fcl::MeshShapeCollisionTraversalNode< OBBRSS, S, NarrowPhaseSolver >::canStop(), fcl::ShapeMeshCollisionTraversalNode< S, kIOS, NarrowPhaseSolver >::canStop(), fcl::initialize(), fcl::ShapeCollisionTraversalNode< S1, S2, NarrowPhaseSolver >::leafTesting(), fcl::MeshCollisionTraversalNode< OBBRSS >::leafTesting(), fcl::MeshShapeCollisionTraversalNode< OBBRSS, S, NarrowPhaseSolver >::leafTesting(), fcl::MeshShapeCollisionTraversalNodeOBB< S, NarrowPhaseSolver >::leafTesting(), fcl::MeshShapeCollisionTraversalNodeRSS< S, NarrowPhaseSolver >::leafTesting(), fcl::MeshShapeCollisionTraversalNodekIOS< S, NarrowPhaseSolver >::leafTesting(), fcl::MeshShapeCollisionTraversalNodeOBBRSS< S, NarrowPhaseSolver >::leafTesting(), fcl::ShapeMeshCollisionTraversalNode< S, kIOS, NarrowPhaseSolver >::leafTesting(), fcl::ShapeMeshCollisionTraversalNodeOBB< S, NarrowPhaseSolver >::leafTesting(), fcl::ShapeMeshCollisionTraversalNodeRSS< S, NarrowPhaseSolver >::leafTesting(), fcl::ShapeMeshCollisionTraversalNodekIOS< S, NarrowPhaseSolver >::leafTesting(), fcl::ShapeMeshCollisionTraversalNodeOBBRSS< S, NarrowPhaseSolver >::leafTesting(), fcl::OcTreeCollisionTraversalNode< NarrowPhaseSolver >::leafTesting(), fcl::ShapeOcTreeCollisionTraversalNode< S, NarrowPhaseSolver >::leafTesting(), fcl::OcTreeShapeCollisionTraversalNode< S, NarrowPhaseSolver >::leafTesting(), fcl::MeshOcTreeCollisionTraversalNode< BV, NarrowPhaseSolver >::leafTesting(), and fcl::OcTreeMeshCollisionTraversalNode< BV, NarrowPhaseSolver >::leafTesting().

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines