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

Traversal node for conservative advancement computation between BVH and shape. More...

#include <mesh_shape_conservative_advancement_traversal_node.h>

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

Public Types

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

Public Member Functions

S BVTesting (int b1, int b2) const
 BV culling test in one BVTT node. More...
 
bool canStop (S c) const
 Whether the traversal process can stop early. More...
 
void leafTesting (int b1, int b2) const
 Conservative advancement testing between leaves (one triangle and one shape) More...
 
 MeshShapeConservativeAdvancementTraversalNode (S w_=1)
 
- Public Member Functions inherited from fcl::detail::MeshShapeDistanceTraversalNode< BV, Shape, 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 triangle and one shape) More...
 
 MeshShapeDistanceTraversalNode ()
 
- Public Member Functions inherited from fcl::detail::BVHShapeDistanceTraversalNode< BV, Shape >
 BVHShapeDistanceTraversalNode ()
 
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 isFirstNodeLeaf (int b) const
 Whether the BV node in the first BVH tree is leaf. More...
 
- Public Member Functions inherited from fcl::detail::DistanceTraversalNodeBase< BV::S >
virtual bool canStop (BV::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< BV::S >
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...
 
virtual bool isSecondNodeLeaf (int b) const
 Whether b is a leaf node in the second BVH tree. More...
 
virtual void postprocess ()
 
virtual void preprocess ()
 
virtual ~TraversalNodeBase ()
 

Public Attributes

Vector3< Sclosest_p1
 
Vector3< Sclosest_p2
 
S delta_t
 The delta_t each step. More...
 
int last_tri_id
 
S min_distance
 
const MotionBase< S > * motion1
 Motions for the two objects in query. More...
 
const MotionBase< S > * motion2
 
std::vector< ConservativeAdvancementStackData< S > > stack
 
S t_err
 
S toc
 The time from beginning point. More...
 
S w
 CA controlling variable: early stop for the early iterations of CA. More...
 
- Public Attributes inherited from fcl::detail::MeshShapeDistanceTraversalNode< BV, Shape, NarrowPhaseSolver >
S abs_err
 
const NarrowPhaseSolver * nsolver
 
S rel_err
 
Triangletri_indices
 
Vector3< S > * vertices
 
- Public Attributes inherited from fcl::detail::BVHShapeDistanceTraversalNode< BV, Shape >
const BVHModel< BV > * model1
 
const Shape * model2
 
BV model2_bv
 
int num_bv_tests
 
int num_leaf_tests
 
S query_time_seconds
 
- Public Attributes inherited from fcl::detail::DistanceTraversalNodeBase< BV::S >
bool enable_statistics
 Whether stores statistics. More...
 
DistanceRequest< BV::S > request
 request setting for distance More...
 
DistanceResult< BV::S > * result
 distance 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 BV, typename Shape, typename NarrowPhaseSolver>
class fcl::detail::MeshShapeConservativeAdvancementTraversalNode< BV, Shape, NarrowPhaseSolver >

Traversal node for conservative advancement computation between BVH and shape.

Definition at line 52 of file mesh_shape_conservative_advancement_traversal_node.h.

Member Typedef Documentation

◆ S

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

Constructor & Destructor Documentation

◆ MeshShapeConservativeAdvancementTraversalNode()

template<typename BV , typename Shape , typename NarrowPhaseSolver >
fcl::detail::MeshShapeConservativeAdvancementTraversalNode< BV, Shape, NarrowPhaseSolver >::MeshShapeConservativeAdvancementTraversalNode ( S  w_ = 1)

Member Function Documentation

◆ BVTesting()

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

BV culling test in one BVTT node.

Reimplemented from fcl::detail::BVHShapeDistanceTraversalNode< BV, Shape >.

Definition at line 71 of file mesh_shape_conservative_advancement_traversal_node-inl.h.

◆ canStop()

template<typename BV , typename Shape , typename NarrowPhaseSolver >
bool fcl::detail::MeshShapeConservativeAdvancementTraversalNode< BV, Shape, NarrowPhaseSolver >::canStop ( S  c) const

Whether the traversal process can stop early.

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

◆ leafTesting()

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

Conservative advancement testing between leaves (one triangle and one shape)

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

Definition at line 85 of file mesh_shape_conservative_advancement_traversal_node-inl.h.

Member Data Documentation

◆ closest_p1

template<typename BV , typename Shape , typename NarrowPhaseSolver >
Vector3<S> fcl::detail::MeshShapeConservativeAdvancementTraversalNode< BV, Shape, NarrowPhaseSolver >::closest_p1
mutable

◆ closest_p2

template<typename BV , typename Shape , typename NarrowPhaseSolver >
Vector3<S> fcl::detail::MeshShapeConservativeAdvancementTraversalNode< BV, Shape, NarrowPhaseSolver >::closest_p2

◆ delta_t

template<typename BV , typename Shape , typename NarrowPhaseSolver >
S fcl::detail::MeshShapeConservativeAdvancementTraversalNode< BV, Shape, NarrowPhaseSolver >::delta_t
mutable

The delta_t each step.

Definition at line 84 of file mesh_shape_conservative_advancement_traversal_node.h.

◆ last_tri_id

template<typename BV , typename Shape , typename NarrowPhaseSolver >
int fcl::detail::MeshShapeConservativeAdvancementTraversalNode< BV, Shape, NarrowPhaseSolver >::last_tri_id
mutable

◆ min_distance

template<typename BV , typename Shape , typename NarrowPhaseSolver >
S fcl::detail::MeshShapeConservativeAdvancementTraversalNode< BV, Shape, NarrowPhaseSolver >::min_distance
mutable

◆ motion1

template<typename BV , typename Shape , typename NarrowPhaseSolver >
const MotionBase<S>* fcl::detail::MeshShapeConservativeAdvancementTraversalNode< BV, Shape, NarrowPhaseSolver >::motion1

Motions for the two objects in query.

Definition at line 87 of file mesh_shape_conservative_advancement_traversal_node.h.

◆ motion2

template<typename BV , typename Shape , typename NarrowPhaseSolver >
const MotionBase<S>* fcl::detail::MeshShapeConservativeAdvancementTraversalNode< BV, Shape, NarrowPhaseSolver >::motion2

◆ stack

template<typename BV , typename Shape , typename NarrowPhaseSolver >
std::vector<ConservativeAdvancementStackData<S> > fcl::detail::MeshShapeConservativeAdvancementTraversalNode< BV, Shape, NarrowPhaseSolver >::stack
mutable

◆ t_err

template<typename BV , typename Shape , typename NarrowPhaseSolver >
S fcl::detail::MeshShapeConservativeAdvancementTraversalNode< BV, Shape, NarrowPhaseSolver >::t_err

◆ toc

template<typename BV , typename Shape , typename NarrowPhaseSolver >
S fcl::detail::MeshShapeConservativeAdvancementTraversalNode< BV, Shape, NarrowPhaseSolver >::toc

The time from beginning point.

Definition at line 80 of file mesh_shape_conservative_advancement_traversal_node.h.

◆ w

template<typename BV , typename Shape , typename NarrowPhaseSolver >
S fcl::detail::MeshShapeConservativeAdvancementTraversalNode< BV, Shape, NarrowPhaseSolver >::w

CA controlling variable: early stop for the early iterations of CA.

Definition at line 77 of file mesh_shape_conservative_advancement_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:50