Public Types | Public Member Functions | Public Attributes | Friends | List of all members
fcl::detail::MeshConservativeAdvancementTraversalNode< BV > Class Template Reference

continuous collision node using conservative advancement. when using this default version, must refit the BVH in current configuration (R_t, T_t) into default configuration More...

#include <mesh_conservative_advancement_traversal_node.h>

Inheritance diagram for fcl::detail::MeshConservativeAdvancementTraversalNode< BV >:
Inheritance graph
[legend]

Public Types

using S = typename BV::S
 
- Public Types inherited from fcl::detail::MeshDistanceTraversalNode< BV >
using S = typename BV::S
 
- Public Types inherited from fcl::detail::BVHDistanceTraversalNode< BV >
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 (two triangles) More...
 
 MeshConservativeAdvancementTraversalNode (S w_=1)
 
- Public Member Functions inherited from fcl::detail::MeshDistanceTraversalNode< BV >
bool canStop (S c) const
 Whether the traversal process can stop early. More...
 
void leafTesting (int b1, int b2) const
 Distance testing between leaves (two triangles) More...
 
 MeshDistanceTraversalNode ()
 
- Public Member Functions inherited from fcl::detail::BVHDistanceTraversalNode< BV >
 BVHDistanceTraversalNode ()
 
bool firstOverSecond (int b1, int b2) const
 Determine the traversal order, is the first BVTT subtree better. 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...
 
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 isFirstNodeLeaf (int b) const
 Whether the BV node in the first BVH tree is leaf. More...
 
bool isSecondNodeLeaf (int b) const
 Whether the BV node in the second 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 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_id1
 
int last_tri_id2
 
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::MeshDistanceTraversalNode< BV >
S abs_err
 
S rel_err
 relative and absolute error, default value is 0.01 for both terms More...
 
Triangletri_indices1
 
Triangletri_indices2
 
Vector3< S > * vertices1
 
Vector3< S > * vertices2
 
- Public Attributes inherited from fcl::detail::BVHDistanceTraversalNode< BV >
const BVHModel< BV > * model1
 The first BVH model. More...
 
const BVHModel< BV > * model2
 The second BVH model. More...
 
int num_bv_tests
 statistical information More...
 
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...
 

Friends

template<typename , typename >
struct CanStopImpl
 

Detailed Description

template<typename BV>
class fcl::detail::MeshConservativeAdvancementTraversalNode< BV >

continuous collision node using conservative advancement. when using this default version, must refit the BVH in current configuration (R_t, T_t) into default configuration

Definition at line 53 of file mesh_conservative_advancement_traversal_node.h.

Member Typedef Documentation

◆ S

template<typename BV >
using fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::S = typename BV::S

Constructor & Destructor Documentation

◆ MeshConservativeAdvancementTraversalNode()

Member Function Documentation

◆ BVTesting()

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

BV culling test in one BVTT node.

Reimplemented from fcl::detail::BVHDistanceTraversalNode< BV >.

Definition at line 99 of file mesh_conservative_advancement_traversal_node-inl.h.

◆ canStop()

template<typename BV >
bool fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::canStop ( S  c) const

Whether the traversal process can stop early.

Definition at line 234 of file mesh_conservative_advancement_traversal_node-inl.h.

◆ leafTesting()

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

Conservative advancement testing between leaves (two triangles)

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

Definition at line 112 of file mesh_conservative_advancement_traversal_node-inl.h.

Friends And Related Function Documentation

◆ CanStopImpl

template<typename BV >
template<typename , typename >
friend struct CanStopImpl
friend

Member Data Documentation

◆ closest_p1

template<typename BV >
Vector3<S> fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::closest_p1
mutable

◆ closest_p2

template<typename BV >
Vector3<S> fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::closest_p2

◆ delta_t

template<typename BV >
S fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::delta_t
mutable

The delta_t each step.

Definition at line 85 of file mesh_conservative_advancement_traversal_node.h.

◆ last_tri_id1

template<typename BV >
int fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::last_tri_id1
mutable

◆ last_tri_id2

template<typename BV >
int fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::last_tri_id2

◆ min_distance

template<typename BV >
S fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::min_distance
mutable

◆ motion1

template<typename BV >
const MotionBase<S>* fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::motion1

Motions for the two objects in query.

Definition at line 88 of file mesh_conservative_advancement_traversal_node.h.

◆ motion2

template<typename BV >
const MotionBase<S>* fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::motion2

◆ stack

template<typename BV >
std::vector<ConservativeAdvancementStackData<S> > fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::stack
mutable

◆ t_err

template<typename BV >
S fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::t_err

◆ toc

template<typename BV >
S fcl::detail::MeshConservativeAdvancementTraversalNode< BV >::toc

The time from beginning point.

Definition at line 81 of file mesh_conservative_advancement_traversal_node.h.

◆ w

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

Definition at line 78 of file mesh_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