Public Member Functions | List of all members
hpp::fcl::ShapeMeshDistanceTraversalNodekIOS< S, NarrowPhaseSolver > Class Template Reference

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

Inheritance diagram for hpp::fcl::ShapeMeshDistanceTraversalNodekIOS< S, NarrowPhaseSolver >:
[legend]
Collaboration diagram for hpp::fcl::ShapeMeshDistanceTraversalNodekIOS< S, NarrowPhaseSolver >:
[legend]

Public Member Functions

 ShapeMeshDistanceTraversalNodekIOS ()
 
void preprocess ()
 
void postprocess ()
 
FCL_REAL BVTesting (int b1, int b2) const
 BV test between b1 and b2. More...
 
void leafTesting (int b1, int b2) const
 Leaf test between node b1 and b2, if they are both leafs. More...
 
- Public Member Functions inherited from hpp::fcl::ShapeMeshDistanceTraversalNode< S, kIOS, NarrowPhaseSolver >
 ShapeMeshDistanceTraversalNode ()
 
void leafTesting (int b1, int b2) const
 Distance testing between leaves (one shape and one triangle) More...
 
bool canStop (FCL_REAL c) const
 Whether the traversal process can stop early. More...
 
- Public Member Functions inherited from hpp::fcl::ShapeBVHDistanceTraversalNode< S, kIOS >
 ShapeBVHDistanceTraversalNode ()
 
bool isSecondNodeLeaf (int b) const
 Whether the BV node in the second BVH tree is leaf. More...
 
int getSecondLeftChild (int b) const
 Obtain the left child of BV node in the second BVH. More...
 
int getSecondRightChild (int b) const
 Obtain the right child of BV node in the second BVH. More...
 
FCL_REAL BVTesting (int b1, int b2) const
 BV culling test in one BVTT node. More...
 
- Public Member Functions inherited from hpp::fcl::DistanceTraversalNodeBase
 DistanceTraversalNodeBase ()
 
virtual ~DistanceTraversalNodeBase ()
 
void enableStatistics (bool enable)
 Whether store some statistics information during traversal. More...
 
- Public Member Functions inherited from hpp::fcl::TraversalNodeBase
virtual ~TraversalNodeBase ()
 
virtual bool isFirstNodeLeaf (int b) const
 Whether b is a leaf node in the first 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 getFirstLeftChild (int b) const
 Get the left child of the node b in the first tree. More...
 
virtual int getFirstRightChild (int b) const
 Get the right child of the node b in the first tree. More...
 

Additional Inherited Members

- Public Attributes inherited from hpp::fcl::ShapeMeshDistanceTraversalNode< S, kIOS, NarrowPhaseSolver >
Vec3fvertices
 
Triangletri_indices
 
FCL_REAL rel_err
 
FCL_REAL abs_err
 
const NarrowPhaseSolver * nsolver
 
- Public Attributes inherited from hpp::fcl::ShapeBVHDistanceTraversalNode< S, kIOS >
const S * model1
 
const BVHModel< kIOS > * model2
 
kIOS model1_bv
 
int num_bv_tests
 
int num_leaf_tests
 
FCL_REAL query_time_seconds
 
- Public Attributes inherited from hpp::fcl::DistanceTraversalNodeBase
DistanceRequest request
 request setting for distance More...
 
DistanceResultresult
 distance result kept during the traversal iteration More...
 
bool enable_statistics
 Whether stores statistics. More...
 
- Public Attributes inherited from hpp::fcl::TraversalNodeBase
Transform3f tf1
 configuation of first object More...
 
Transform3f tf2
 configuration of second object More...
 

Constructor & Destructor Documentation

template<typename S, typename NarrowPhaseSolver>
hpp::fcl::ShapeMeshDistanceTraversalNodekIOS< S, NarrowPhaseSolver >::ShapeMeshDistanceTraversalNodekIOS ( )
inline

Member Function Documentation

template<typename S, typename NarrowPhaseSolver>
FCL_REAL hpp::fcl::ShapeMeshDistanceTraversalNodekIOS< S, NarrowPhaseSolver >::BVTesting ( int  b1,
int  b2 
) const
inlinevirtual
template<typename S, typename NarrowPhaseSolver>
void hpp::fcl::ShapeMeshDistanceTraversalNodekIOS< S, NarrowPhaseSolver >::leafTesting ( int  b1,
int  b2 
) const
inlinevirtual
template<typename S, typename NarrowPhaseSolver>
void hpp::fcl::ShapeMeshDistanceTraversalNodekIOS< S, NarrowPhaseSolver >::postprocess ( )
inlinevirtual

Reimplemented from hpp::fcl::TraversalNodeBase.

template<typename S, typename NarrowPhaseSolver>
void hpp::fcl::ShapeMeshDistanceTraversalNodekIOS< S, NarrowPhaseSolver >::preprocess ( )
inlinevirtual