All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
fcl::MeshShapeCollisionTraversalNodeOBB< S, NarrowPhaseSolver > Class Template Reference

Traversal node for mesh and shape, when mesh BVH is one of the oriented node (OBB, RSS, OBBRSS, kIOS) More...

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

Inheritance diagram for fcl::MeshShapeCollisionTraversalNodeOBB< S, NarrowPhaseSolver >:
Collaboration diagram for fcl::MeshShapeCollisionTraversalNodeOBB< S, NarrowPhaseSolver >:

Public Member Functions

 MeshShapeCollisionTraversalNodeOBB (bool enable_distance_lower_bound=false)
 
bool BVTesting (int b1, int b2) const
 BV test between b1 and b2. More...
 
void leafTesting (int b1, int b2, FCL_REAL &sqrDistLowerBound) const
 Leaf test between node b1 and b2, if they are both leafs. More...
 
- Public Member Functions inherited from fcl::MeshShapeCollisionTraversalNode< OBB, S, NarrowPhaseSolver >
 MeshShapeCollisionTraversalNode (bool enable_distance_lower_bound=false)
 
void leafTesting (int b1, int b2) const
 Intersection testing between leaves (one triangle and one shape) More...
 
bool canStop () const
 Whether the traversal process can stop early. More...
 
- Public Member Functions inherited from fcl::BVHShapeCollisionTraversalNode< OBB, S >
 BVHShapeCollisionTraversalNode (bool enable_distance_lower_bound)
 
bool isFirstNodeLeaf (int b) const
 Whether the BV node in the first BVH tree is leaf. More...
 
int getFirstLeftChild (int b) const
 Obtain the left child of BV node in the first BVH. More...
 
int getFirstRightChild (int b) const
 Obtain the right child of BV node in the first BVH. More...
 
bool BVTesting (int b1, int b2) const
 BV culling test in one BVTT node. More...
 
bool BVTesting (int b1, int b2, FCL_REAL &sqrDistLowerBound) const
 BV test between b1 and b2. More...
 
- Public Member Functions inherited from fcl::CollisionTraversalNodeBase
 CollisionTraversalNodeBase (bool enable_distance_lower_bound_=false)
 
virtual ~CollisionTraversalNodeBase ()
 
void enableStatistics (bool enable)
 Whether store some statistics information during traversal. More...
 
- Public Member Functions inherited from fcl::TraversalNodeBase
virtual ~TraversalNodeBase ()
 
virtual void preprocess ()
 
virtual void postprocess ()
 
virtual bool isSecondNodeLeaf (int b) const
 Whether b is a leaf node in the second BVH tree. More...
 
virtual bool firstOverSecond (int b1, int b2) const
 Traverse the subtree of the node in the first tree first. More...
 
virtual int getSecondLeftChild (int b) const
 Get the left child of the node b in the second tree. More...
 
virtual int getSecondRightChild (int b) const
 Get the right child of the node b in the second tree. More...
 

Additional Inherited Members

- Public Attributes inherited from fcl::MeshShapeCollisionTraversalNode< OBB, S, NarrowPhaseSolver >
Vec3fvertices
 
Triangletri_indices
 
FCL_REAL cost_density
 
const NarrowPhaseSolver * nsolver
 
- Public Attributes inherited from fcl::BVHShapeCollisionTraversalNode< OBB, S >
const BVHModel< OBB > * model1
 
const S * model2
 
OBB model2_bv
 
int num_bv_tests
 
int num_leaf_tests
 
FCL_REAL query_time_seconds
 
- Public Attributes inherited from fcl::CollisionTraversalNodeBase
CollisionRequest request
 request setting for collision More...
 
CollisionResultresult
 collision result kept during the traversal iteration More...
 
bool enable_statistics
 Whether stores statistics. More...
 
bool enable_distance_lower_bound
 Whether to compute a lower bound on distance between bounding volumes. More...
 
- Public Attributes inherited from fcl::TraversalNodeBase
Transform3f tf1
 configuation of first object More...
 
Transform3f tf2
 configuration of second object More...
 

Detailed Description

template<typename S, typename NarrowPhaseSolver>
class fcl::MeshShapeCollisionTraversalNodeOBB< S, NarrowPhaseSolver >

Traversal node for mesh and shape, when mesh BVH is one of the oriented node (OBB, RSS, OBBRSS, kIOS)

Constructor & Destructor Documentation

template<typename S, typename NarrowPhaseSolver>
fcl::MeshShapeCollisionTraversalNodeOBB< S, NarrowPhaseSolver >::MeshShapeCollisionTraversalNodeOBB ( bool  enable_distance_lower_bound = false)
inline

Member Function Documentation