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

Traversal node for collision between shape and mesh. More...

#include <shape_mesh_collision_traversal_node.h>

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

Public Types

using S = typename BV::S
 
- Public Types inherited from fcl::detail::ShapeBVHCollisionTraversalNode< Shape, BV >
using S = typename BV::S
 

Public Member Functions

bool canStop () const
 Whether the traversal process can stop early. More...
 
void leafTesting (int b1, int b2) const
 Intersection testing between leaves (one shape and one triangle) More...
 
 ShapeMeshCollisionTraversalNode ()
 
- Public Member Functions inherited from fcl::detail::ShapeBVHCollisionTraversalNode< Shape, BV >
bool BVTesting (int b1, int b2) const
 BV culling test in one BVTT node. More...
 
bool firstOverSecond (int, int) const
 Alway extend the second model, which is a BVH model. 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...
 
 ShapeBVHCollisionTraversalNode ()
 
- Public Member Functions inherited from fcl::detail::CollisionTraversalNodeBase< BV::S >
virtual bool canStop () const
 Check whether the traversal can stop. More...
 
 CollisionTraversalNodeBase ()
 
void enableStatistics (bool enable)
 Whether store some statistics information during traversal. More...
 
virtual ~CollisionTraversalNodeBase ()
 
- Public Member Functions inherited from fcl::detail::TraversalNodeBase< BV::S >
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 void postprocess ()
 
virtual void preprocess ()
 
virtual ~TraversalNodeBase ()
 

Public Attributes

S cost_density
 
const NarrowPhaseSolver * nsolver
 
Triangletri_indices
 
Vector3< S > * vertices
 
- Public Attributes inherited from fcl::detail::ShapeBVHCollisionTraversalNode< Shape, BV >
const Shape * model1
 
BV model1_bv
 
const BVHModel< BV > * model2
 
int num_bv_tests
 
int num_leaf_tests
 
S query_time_seconds
 
- Public Attributes inherited from fcl::detail::CollisionTraversalNodeBase< BV::S >
bool enable_statistics
 Whether stores statistics. More...
 
CollisionRequest< BV::S > request
 request setting for collision More...
 
CollisionResult< BV::S > * result
 collision result kept during the traversal iteration More...
 
- Public Attributes inherited from fcl::detail::TraversalNodeBase< BV::S >
Transform3< BV::S > tf1
 configuation of first object More...
 
Transform3< BV::S > tf2
 configuration of second object More...
 

Detailed Description

template<typename Shape, typename BV, typename NarrowPhaseSolver>
class fcl::detail::ShapeMeshCollisionTraversalNode< Shape, BV, NarrowPhaseSolver >

Traversal node for collision between shape and mesh.

Definition at line 52 of file shape_mesh_collision_traversal_node.h.

Member Typedef Documentation

◆ S

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

Definition at line 56 of file shape_mesh_collision_traversal_node.h.

Constructor & Destructor Documentation

◆ ShapeMeshCollisionTraversalNode()

template<typename Shape , typename BV , typename NarrowPhaseSolver >
FCL_EXPORT fcl::detail::ShapeMeshCollisionTraversalNode< Shape, BV, NarrowPhaseSolver >::ShapeMeshCollisionTraversalNode

Definition at line 54 of file shape_mesh_collision_traversal_node-inl.h.

Member Function Documentation

◆ canStop()

template<typename Shape , typename BV , typename NarrowPhaseSolver >
FCL_EXPORT bool fcl::detail::ShapeMeshCollisionTraversalNode< Shape, BV, NarrowPhaseSolver >::canStop

Whether the traversal process can stop early.

Definition at line 135 of file shape_mesh_collision_traversal_node-inl.h.

◆ leafTesting()

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

Intersection testing between leaves (one shape and one triangle)

Reimplemented from fcl::detail::CollisionTraversalNodeBase< BV::S >.

Definition at line 66 of file shape_mesh_collision_traversal_node-inl.h.

Member Data Documentation

◆ cost_density

template<typename Shape , typename BV , typename NarrowPhaseSolver >
S fcl::detail::ShapeMeshCollisionTraversalNode< Shape, BV, NarrowPhaseSolver >::cost_density

Definition at line 69 of file shape_mesh_collision_traversal_node.h.

◆ nsolver

template<typename Shape , typename BV , typename NarrowPhaseSolver >
const NarrowPhaseSolver* fcl::detail::ShapeMeshCollisionTraversalNode< Shape, BV, NarrowPhaseSolver >::nsolver

Definition at line 71 of file shape_mesh_collision_traversal_node.h.

◆ tri_indices

template<typename Shape , typename BV , typename NarrowPhaseSolver >
Triangle* fcl::detail::ShapeMeshCollisionTraversalNode< Shape, BV, NarrowPhaseSolver >::tri_indices

Definition at line 67 of file shape_mesh_collision_traversal_node.h.

◆ vertices

template<typename Shape , typename BV , typename NarrowPhaseSolver >
Vector3<S>* fcl::detail::ShapeMeshCollisionTraversalNode< Shape, BV, NarrowPhaseSolver >::vertices

Definition at line 66 of file shape_mesh_collision_traversal_node.h.


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


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