Public Types | Public Member Functions | List of all members
fcl::detail::ShapeMeshDistanceTraversalNodeRSS< Shape, NarrowPhaseSolver > Class Template Reference

#include <shape_mesh_distance_traversal_node.h>

Inheritance diagram for fcl::detail::ShapeMeshDistanceTraversalNodeRSS< Shape, NarrowPhaseSolver >:
Inheritance graph
[legend]

Public Types

using S = typename Shape::S
 
- Public Types inherited from fcl::detail::ShapeMeshDistanceTraversalNode< Shape, RSS< Shape::S >, NarrowPhaseSolver >
using S = typename RSS< Shape::S > ::S
 
- Public Types inherited from fcl::detail::ShapeBVHDistanceTraversalNode< Shape, RSS< Shape::S > >
using S = typename RSS< Shape::S > ::S
 

Public Member Functions

S 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...
 
void postprocess ()
 
void preprocess ()
 
 ShapeMeshDistanceTraversalNodeRSS ()
 
- Public Member Functions inherited from fcl::detail::ShapeMeshDistanceTraversalNode< Shape, RSS< Shape::S >, NarrowPhaseSolver >
bool canStop (S c) const
 Whether the traversal process can stop early. More...
 
void leafTesting (int b1, int b2) const
 Distance testing between leaves (one shape and one triangle) More...
 
 ShapeMeshDistanceTraversalNode ()
 
- Public Member Functions inherited from fcl::detail::ShapeBVHDistanceTraversalNode< Shape, RSS< Shape::S > >
S BVTesting (int b1, int b2) const
 BV culling test in one BVTT node. 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...
 
bool isSecondNodeLeaf (int b) const
 Whether the BV node in the second BVH tree is leaf. More...
 
 ShapeBVHDistanceTraversalNode ()
 
- Public Member Functions inherited from fcl::detail::DistanceTraversalNodeBase< RSS< Shape::S > ::S >
virtual bool canStop (RSS< Shape::S > ::S c) const
 Check whether the traversal can stop. More...
 
 DistanceTraversalNodeBase ()
 
void enableStatistics (bool enable)
 Whether store some statistics information during traversal. More...
 
virtual ~DistanceTraversalNodeBase ()
 
- Public Member Functions inherited from fcl::detail::TraversalNodeBase< RSS< Shape::S > ::S >
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...
 
virtual bool isFirstNodeLeaf (int b) const
 Whether b is a leaf node in the first BVH tree. More...
 
virtual ~TraversalNodeBase ()
 

Additional Inherited Members

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

Detailed Description

template<typename Shape, typename NarrowPhaseSolver>
class fcl::detail::ShapeMeshDistanceTraversalNodeRSS< Shape, NarrowPhaseSolver >

Definition at line 92 of file shape_mesh_distance_traversal_node.h.

Member Typedef Documentation

◆ S

template<typename Shape , typename NarrowPhaseSolver >
using fcl::detail::ShapeMeshDistanceTraversalNodeRSS< Shape, NarrowPhaseSolver >::S = typename Shape::S

Definition at line 98 of file shape_mesh_distance_traversal_node.h.

Constructor & Destructor Documentation

◆ ShapeMeshDistanceTraversalNodeRSS()

template<typename Shape , typename NarrowPhaseSolver >
fcl::detail::ShapeMeshDistanceTraversalNodeRSS< Shape, NarrowPhaseSolver >::ShapeMeshDistanceTraversalNodeRSS

Definition at line 165 of file shape_mesh_distance_traversal_node-inl.h.

Member Function Documentation

◆ BVTesting()

template<typename Shape , typename NarrowPhaseSolver >
Shape::S fcl::detail::ShapeMeshDistanceTraversalNodeRSS< Shape, NarrowPhaseSolver >::BVTesting ( int  b1,
int  b2 
) const
virtual

BV test between b1 and b2.

Reimplemented from fcl::detail::DistanceTraversalNodeBase< RSS< Shape::S > ::S >.

Definition at line 189 of file shape_mesh_distance_traversal_node-inl.h.

◆ leafTesting()

template<typename Shape , typename NarrowPhaseSolver >
void fcl::detail::ShapeMeshDistanceTraversalNodeRSS< Shape, NarrowPhaseSolver >::leafTesting ( int  b1,
int  b2 
) const
virtual

Leaf test between node b1 and b2, if they are both leafs.

Reimplemented from fcl::detail::DistanceTraversalNodeBase< RSS< Shape::S > ::S >.

Definition at line 200 of file shape_mesh_distance_traversal_node-inl.h.

◆ postprocess()

template<typename Shape , typename NarrowPhaseSolver >
void fcl::detail::ShapeMeshDistanceTraversalNodeRSS< Shape, NarrowPhaseSolver >::postprocess
virtual

◆ preprocess()

template<typename Shape , typename NarrowPhaseSolver >
void fcl::detail::ShapeMeshDistanceTraversalNodeRSS< Shape, NarrowPhaseSolver >::preprocess
virtual

The documentation for this class was generated from the following files:


fcl
Author(s):
autogenerated on Tue Dec 5 2023 03:40:51